Start·Terminal-Befehle

xargs

Textverarbeitung

Aufruf

[cmd] | xargs [cmd2]

Verwandelt Eingabezeilen in Argumente für ein anderes Kommando; Namen mit Leerzeichen brechen es, sofern nicht beide Seiten NUL nutzen — find -print0 mit xargs -0.

Häufige Optionen

OptionBedeutung
-nHow many arguments to hand over per run
-IPut the argument where a placeholder such as {} sits
-0Read NUL-separated input, to pair with find -print0
-PRun that many copies at once
-rDo not run the command at all on empty input
-tPrint each command before running it

Beispiele

find . -name '*.log' -print0 | xargs -0 rm

Deletes them even when names hold spaces.

xargs -n1 -P4 curl -O < urls.txt

Four downloads at a time.

ls *.txt | xargs -I{} mv {} old/{}

Uses {} where the file name goes.

Sie sind fürs Zusammenstecken mit Pipes gebaut. Drei verkettete Befehle sind meist kürzer als einer, der alles macht.

So liest man das

  • Eckige Klammern [ ] markieren einen Teil, den man weglassen kann.
  • Drei Punkte … heißen: mehrere sind erlaubt.
  • Optionen achten auf Groß- und Kleinschreibung — bei manchen Befehlen sind -r und -R verschieden.

Häufige Fragen

Q. Was macht xargs?

Verwandelt Eingabezeilen in Argumente für ein anderes Kommando; Namen mit Leerzeichen brechen es, sofern nicht beide Seiten NUL nutzen — find -print0 mit xargs -0.

Q. Wie gibt man ihn ein?

[cmd] | xargs [cmd2] — eckige Klammern markieren, was wegfallen darf.

Q. Wie viele Optionen lohnen sich?

Hier stehen 6; die vollständige Liste steht in man xargs. Der Befehl gehört zu Textverarbeitung.

Verwandte Befehle

man-Seite: man xargs