GNU/Linux >> LINUX-Kenntnisse >  >> Linux

xargs-Befehlsbeispiele in Linux

Der Befehl xargs liest aus der Standardeingabe und führt einen Befehl für jedes bereitgestellte Argument aus. Jedes Argument muss durch Leerzeichen getrennt werden. Der Pipe-Operator wird verwendet, um die Ausgabe des ersten Befehls zur Eingabe für den zweiten Befehl zu machen. Der xargs-Befehl wird häufig zusammen mit dem find-Befehl verwendet, um mit jedem Ergebnis zu arbeiten, das in der Datei- oder Verzeichnissuche gefunden wird.

Syntax

Die allgemeine Syntax des xargs-Befehls lautet:

# command [options] [arguments] | xargs [options] {command}

Angenommen, Sie möchten alle Dateien im Verzeichnis /foo mit der Erweiterung .pdf löschen. Sie können xargs verwenden, um den Prozess zu automatisieren:

# find /foo -type f -name "*.pdf" | xargs rm

Der Befehl find sucht nach allen Dateien in /foo mit der Erweiterung .pdf und leitet das Ergebnis dann an den Befehl xargs weiter. Da die Ergebnisse durch ein Leerzeichen getrennt sind, führt der xargs-Befehl den rm-Befehl für jede Datei in den Ergebnissen aus und entfernt alle PDF-Dateien im Verzeichnis.

Der xargs-Befehl hat verschiedene Optionen, wie unten gezeigt:

Option Beschreibung
-I {Ersatzzeichenfolge} Betrachten Sie jede Zeile in der Standardeingabe als ein einzelnes Argument.
-L {Anzahl der Zeilen} Lesen Sie eine bestimmte Anzahl von Zeilen aus der Standardeingabe und verketten Sie sie zu einer langen Zeichenfolge.
-p Den Benutzer vor jedem Befehl auffordern.
-n {Anzahl der Argumente} Lesen Sie die maximale Anzahl von Argumenten aus der Standardeingabe und fügen Sie sie am Ende der Befehlsvorlage ein.
-E {Ende der Zeichenfolge} Repräsentiert das Ende der Standardeingabe.
-t Schreiben Sie jeden Befehl in die Standardfehlerausgabe, bevor Sie den Befehl ausführen.
-s {maximale Größe} Legen Sie die maximal zulässige Größe einer Argumentliste auf eine bestimmte Anzahl von Zeichen fest.

xargs-Befehlsbeispiele

1. Führen Sie einen Befehl mit den Eingabedaten als Argumente aus:

# arguments_source | xargs command

2. Führen Sie mehrere verkettete Befehle für die Eingabedaten aus:

# arguments_source | xargs sh -c "command1 && command2 | command3"

3. Löschen Sie alle Dateien mit der Erweiterung `.backup` (`-print0` verwendet ein Nullzeichen, um Dateinamen aufzuteilen, und `-0` verwendet es als Trennzeichen):

# find . -name '*.backup' -print0 | xargs -0 rm -v

4. Führen Sie den Befehl einmal für jede Eingabezeile aus und ersetzen Sie alle Vorkommen des Platzhalters (hier als `_` gekennzeichnet) durch die Eingabezeile:

# arguments_source | xargs -I _ command _ optional_extra_arguments

5. parallele Läufe von bis zu "max-procs"-Prozessen gleichzeitig; der Standardwert ist 1. Wenn `max-procs` 0 ist, führt xargs so viele Prozesse wie möglich gleichzeitig aus:

# arguments_source | xargs -P max-procs command


Linux
  1. 10 Xargs-Befehlsbeispiele in Linux / UNIX

  2. sa-Befehlsbeispiele in Linux

  3. ac-Befehlsbeispiele in Linux

  4. df-Befehlsbeispiele in Linux

  5. du-Befehlsbeispiele in Linux

16 Beispiele für Echo-Befehle unter Linux

9 Beispiele für tee-Befehle unter Linux

9 diff-Befehlsbeispiele in Linux

Xargs-Befehl unter Linux

Beispiele für xargs-Befehle unter Linux

id-Befehlsbeispiele in Linux