Mit dem Linux-xargs wandeln Sie Stan­dard­ein­ga­ben in Befehle um und nutzen diese direkt. xargs wird zwar nicht so häufig in Linux verwendet, er kann Ihnen die Arbeit al­ler­dings deutlich er­leich­tern.

Was ist der Linux-xargs-Befehl?

xargs („extended arguments“) gehört zu den Linux-Befehlen, die von vielen Nut­ze­rin­nen und Nutzern nur selten oder nie verwendet werden. Der Command kann aber die Arbeit deutlich er­leich­tern und unter Umständen sogar Ihren Rechner schonen. Ver­ein­facht aus­ge­drückt, verbindet der Linux-xargs zwei Befehle mit­ein­an­der, wobei er die Ausgabe des einen auswertet und die Er­kennt­nis­se auf den zweiten anwendet. Das ist vor allem dann von Vorteil, wenn Sie eine große Anzahl von Dateien be­ar­bei­ten und bestimmte Aufgaben immer wieder durch­füh­ren müssen.

xargs ist in den meisten Linux-Dis­tri­bu­tio­nen, etwa Debian oder Ubuntu, enthalten und muss nicht in­stal­liert werden.

Wie funk­tio­niert der xargs-Befehl?

xargs liest Daten aus stdin (also der Stan­dard­ein­ga­be) aus und wandelt sie in Be­fehls­zei­len um. Dafür muss dem Befehl das ent­spre­chen­de Kommando als Parameter oder Argument geliefert werden. Die je­wei­li­gen Befehle werden dann einmal oder mehrmals aus­ge­führt. Wenn Sie auf ein spe­zi­el­les Kommando als Parameter ver­zich­ten, nutzt xargs au­to­ma­tisch das Kommando Linux-echo.

Wie sieht die Syntax von Linux-xargs aus?

Wenn Sie den xargs-Befehl im Terminal nutzen möchten, greifen Sie auf diese Syntax zurück:

$ Erstes_Kommando | xargs [Optionen] [Zweites_Kommando]
bash

Dies bewirkt, dass das zweite Kommando mit den Ar­gu­men­ten des ersten aus­ge­führt wird.

Welche Optionen hat der xargs-Befehl?

Es gibt zahl­rei­che Optionen für Linux-xargs. Dies sind die wich­tigs­ten:

  • -0 oder –null: Diese Option bewirkt, dass jedes Zeichen wörtlich genommen wird und Argumente aufgrund des NULL-Zeichens getrennt werden.
  • -a oder –arg-file: Mit dieser Option werden Argumente nicht aus der Stan­dard­ein­ga­be, sondern einer Datei gelesen.
  • -d oder –delimiter: Tren­nun­gen erfolgen mit dieser Option aufgrund des Trenn­zei­chens und nicht des Leer­zei­chens. Auch hierbei wird jedes Zeichen wörtlich genommen.
  • -p oder –in­ter­ac­ti­ve: Mit dieser Option wird vor jeder Aus­füh­rung gefragt, ob xargs fort­fah­ren soll.

Beispiele für Linux-xargs

Die Funk­ti­ons­wei­se des xargs-Befehls lässt sich am besten anhand einiger Beispiele zeigen.

$ find -name "*.txt" | xargs rm
bash

In diesem Beispiel wenden Sie xargs mit dem Linux-find-Befehl und dem Linux-rm-Befehl an. Das Ergebnis ist, dass alle Dateien mit der Endung .txt aus dem Da­tei­sys­tem des Rechners entfernt werden.

$ find -name "*.txt" | xargs grep "Rechnung"
bash

So finden Sie alle Dateien, die das Wort „Rechnung“ enthalten. Dafür nutzen Sie zu­sätz­lich den Linux-grep-Befehl.

Zum Hauptmenü