Hallo,
kleiner Wikiartikel zu einem kleinem Hilfsprogramm im Terminal.
Gruß, noisefloor
Ehemaliger
![]() Anmeldungsdatum: Beiträge: 27306 Wohnort: Görgeshausen |
Hallo, kleiner Wikiartikel zu einem kleinem Hilfsprogramm im Terminal. Gruß, noisefloor |
||||||||||||
Wikiteam
![]() Anmeldungsdatum: Beiträge: 11241 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: 17260 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 |
||||||||||||
Ehemaliger
(Themenstarter)
![]() Anmeldungsdatum: Beiträge: 27306 Wohnort: Görgeshausen |
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
![]() Anmeldungsdatum: Beiträge: 6477 Wohnort: Münster |
Diesen Befehl verstehe ich nicht: ls | map f 'file $f"' Ich kenne map nicht, aber vermute falsches Quoting. Vielleicht ist gemeint:
|
||||||||||||
Ehemaliger
(Themenstarter)
![]() Anmeldungsdatum: Beiträge: 27306 Wohnort: Görgeshausen |
Stimmt, da fehlte ein ". Korrigiert. Gruß, noisefloor |
||||||||||||
Supporter
![]() Anmeldungsdatum: Beiträge: 6477 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' |