Ich kämpfe um dieses Verhalten zu verstehen:Csh - Fetching Felder innen über awk xargs
Script Verhalten: Lesen einer Datei (mit Datumsangaben); Drucken Sie eine Liste von Dateien in einer mehrstufigen Verzeichnisstruktur und ermitteln Sie deren Größe, drucken Sie nur die Dateigröße (zukünftiger Schritt: summieren Sie die Gesamtdateigröße).
Startskript:
cat dates | xargs -I {} sh -c "echo '{}: '; du -d 2 "/folder/" | grep {} | head"
2000-03:
1000 /folder/2000-03balbasldas
2000-04:
12300 /folder/2000-04asdwqdas
[and so on]
Aber wenn ich versuche, auf dem ersten Feld über awk zu filtern, bekomme ich noch die ganze Linie
cat dates | xargs -I {} sh -c "echo '{}: '; du -d 2 "/folder/" | grep {} | awk '{print $1}'"
2000-03:
1000 /folder/2000-03balbasldas
2000-04:
12300 /folder/2000-04asdwqdas
Ich habe schon näherte es über Divide-et -impera und der folgende Befehl funktioniert just fine:
du -d 2 "/folder/" | grep '2000-03' | awk '{print $1}'
1000
Ich fürchte, dass mir etwas sehr Triviales fehlt, aber bis jetzt habe ich noch nichts gefunden.
Irgendeine Idee? Vielen Dank!
Eingang: Verzeichnis mit Ordnern YYYY-MM-random_data und eine Datei mit Zeichenketten benannt:
ls -l
drwxr-xr-x 2 user staff 68 Apr 24 11:21 2000-03-blablabla
drwxr-xr-x 2 user staff 68 Apr 24 11:21 2000-04-blablabla
drwxr-xr-x 2 user staff 68 Apr 24 11:21 2000-05-blablabla
drwxr-xr-x 2 user staff 68 Apr 24 11:21 2000-06-blablabla
drwxr-xr-x 2 user staff 68 Apr 24 11:21 2000-06-blablablb
drwxr-xr-x 2 user staff 68 Apr 24 11:21 2000-06-blablablc
[...]
cat dates
2000-03
2000-04
2000-05
[...]
Erwartete Ausgabe: Summe der Raumscheibe durch alle in dem Ordner enthaltenen Dateien belegt, deren Namen enthalten die Zeichenfolge in der Datei
2000-03: 1000
2000-04: 2123
2000-05: 1222112
[...]
====== Daten Aber insbesondere interessiert mich, warum awk nicht in der Lage ist, die Spalte $ 1 zu holen, die ich darum gebeten habe.
Geben Sie uns eine minimale Eingabe und eine genaue Ausgabe, die Sie suchen. Anstatt anzugeben, wie Ihre Versuche fehlgeschlagen sind. – Inian
@Inische Details hinzugefügt. – Rob013