Hallo,
kleiner Wikiartikel zu einem kleinem Hilfsprogramm im Terminal.
Gruß, noisefloor
Anmeldungsdatum: Beiträge: 29567 |
Hallo, kleiner Wikiartikel zu einem kleinem Hilfsprogramm im Terminal. Gruß, noisefloor |
||||||||||||
Wikiteam
![]() Anmeldungsdatum: Beiträge: 11323 Wohnort: Bremen |
Moin! Es fehlt eine Fremdsoftware-Warnung, und externe Links werden mit Fähnchen versehen. 😕 Wohin soll der Wikilink file führen? Ansonsten kurz und knackig, wenngleich sich mir nicht so ganz erschließt, worum es dabei geht... so long |
||||||||||||
![]() Anmeldungsdatum: Beiträge: 17586 Wohnort: Berlin |
@Heinrich: Da hat sicher jmd. seine Nase ins Funktionale Programmieren gesteckt, und daraufhin ein map-Funktion in der Shell vermisst. @noisefloor:
Der Text ist durcheinander und bruchstückhaft, oder? Was meinst Du dazu:
Programmkritik: Die Homepage räumt ein, dass xargs und find mächtigere Werkzeuge sind und dass das Programm mit Whitespace im Dateinamen nicht klarkommt; ein Problem dem man mit einem tiefen Seufzer zustimmen kann. Es wird jedoch nicht erwähnt, dass xargs und find die besseren Optionen sein können, um eine ganze Reihe an Dateien auf einmal an ein Programm zu übergeben, bzw. dass viele Programme das von sich aus anbieten:
Wen die Ausgabe der Gesamtzeichen stört, der müsste freilich zusätzlich head kennen:
Mit map zum Vergleich:
Auch das Programm file nimmt gerne viele Argumente entgegen und hat auch keine Probleme mit Whitespace im Dateinamen:
Inhaltlich keine Sternstunde von
und inhaltlich natürlich keinen Deut besser. Für die GNU-coreutils ist es typisch, dass man sie mit mehreren Dateien aufrufen kann, d.h. es ist wohl schwierig Beispiele zu finden, wo |
||||||||||||
(Themenstarter)
Anmeldungsdatum: Beiträge: 29567 |
Hallo, Vorschläge / Korrekturen umgesetzt. @user_unknown: wie praktisch / sinnvoll das Programm wirklich ist (oder auch nicht) muss letztendlich jeder selber für sich entscheiden. Ich habe keinen, bin aber zufällig über das Programm gestolpert und dann den kurzen Artikel dazu geschrieben. Vielleicht braucht's irgendwer irgendwann. Vielleicht hat auch irgendwer mal bessere Beispiele für Gruß, noisefloor |
||||||||||||
Supporter, Wikiteam
![]() Anmeldungsdatum: Beiträge: 9424 Wohnort: Münster |
Diesen Befehl verstehe ich nicht: ls | map f 'file $f"' Ich kenne map nicht, aber vermute falsches Quoting. Vielleicht ist gemeint:
|
||||||||||||
(Themenstarter)
Anmeldungsdatum: Beiträge: 29567 |
Stimmt, da fehlte ein ". Korrigiert. Gruß, noisefloor |
||||||||||||
Supporter, Wikiteam
![]() Anmeldungsdatum: Beiträge: 9424 Wohnort: Münster |
Der als Beispiel verwendete Befehl ls | map zeile 'wc -m $zeile' funktioniert natürlich grundsätzlich, liefert aber Fehlermeldungen. wenn es im Arbeitsverzeichnis neben den regulären Dateien noch weitere Ordner oder andere Dateiarten gibt, weil wc eben nur mit regulären Dateien etwas sinnvolles anfangen kann. Dieser erweiterte Befehl sollte das vermeiden: ls | map zeile 'test -f $zeile && wc -m $zeile' |
||||||||||||
Projektleitung
Anmeldungsdatum: Beiträge: 871 Wohnort: Hamburg, Germany |
Keine Reaktion des Artikelautors werte ich mal als Zustimmung und habe es entsprechend editiert. Der Artikel ist nun online. Vielen Dank, noisefloor! Was noch fehlt, ist eine Links-Sektion, die bei einen Terminalprogramm, das mit args und awk verwandt ist, bestimmt leicht mit sinnvollen Links gefüllt werden kann. |