xargs ist ein leistungsstarker Linux/Unix-Befehl zum Erstellen und Ausführen von Befehlszeilen aus der Standardeingabe. Es akzeptiert die Ausgabe eines Befehls und übergibt sie als Argument an einen anderen Befehl. xargs übernimmt die durch Leerzeichen oder Zeilenumbrüche getrennte Standardeingabe und führt den Befehl ein- oder mehrmals mit beliebigen Argumenten gefolgt von Elementen aus. Leere Zeilen in der Standardeingabe werden ignoriert.
Beispiel
Beispiel 1: Eine große Anzahl von Dateien in einen anderen Ordner kopieren.
Manchmal müssen wir eine lange Liste von Dateien kopieren. In diesem Fall schlägt der Befehl cp mit der Fehlermeldung „Parameterliste zu lang“ fehl. Wir können xargs verwenden, um diese Aufgabe zu erfüllen.
# find /home/linuxman/public_html/tecadmin.net/ -type f | xargs -n1 -i cp {} /var/www/backup/
Beispiel 2: Mehrere Dateien aus einem Ordner löschen.
Manchmal möchten wir eine große Anzahl von Dateien aus einem Ordner löschen. Das folgende Beispiel löscht alle .log-Dateien aus dem Verzeichnis /var/log.
# find /var/www/tmp/ -type f | xargs rm -f
Der obige Befehl kann keine Dateien mit Leerzeichen löschen. Um Leerzeichen im xargs-Befehl zu verarbeiten, ist der folgende Befehl erforderlich.
# find /var/www/tmp/ -type f -print0 | xargs -0 rm -f
Beispiel 3: Zählen Sie die Anzahl der Zeilen in mehreren Dateien.
Das folgende Beispiel zählt die Anzahl der Zeilen für jede .txt-Datei im /opt-Verzeichnis und seinen Unterverzeichnissen
# find /opt -name "*.txt" | xargs wc -l
Um Dateien mit Leerzeichen in ihren Namen zu verarbeiten, müssen Sie dies tun Verwenden Sie den folgenden Befehl.
# find /opt/ -name "*.log" -print0 | xargs -0 wc -l
Beispiel 4: Sichern Sie alle Konfigurationsdateien.
Wenn Sie alle Konfigurationsdateien (Erweiterung .conf) im System sichern möchten, verwenden Sie bitte den folgenden Befehl.
# find / -name "*.conf" | xargs tar czf config.tar.gz # ls -l config.tar.gz -rw-r--r--. 1 root root 193310 Apr 1 13:26 config.tar.gz
Beispiel 5: Verwendung eines benutzerdefinierten Trennzeichens mit xargs.
Wir können auch den benutzerdefinierten Löscher und den Befehl xargs verwenden. Standardmäßig werden Leerzeichen und neue Zeilen als Trennzeichen verwendet. Verwenden Sie den Parameter -d, um das Trennzeichen zu definieren.
# echo "1,2,3,4,5" | xargs -d, echo
Ausgabe
1 2 3 4 5
Beispiel 6: Verwenden Sie xargs, um die Ausgabe in separaten Zeilen anzuzeigen.
In Beispiel 5 wird die Ausgabe in einer einzelnen Zeile angezeigt. Wir können auch festlegen, dass jede Ausgabe in einer separaten Zeile angezeigt wird.
# echo "1,2,3,4,5" | xargs -d, -L 1 echo
Ausgabe
1 2 3 4 5
Beispiel 7: Behandeln Sie leere Bereiche in Dateinamen oder Pfaden.
Um Leerzeichen in Namen zu verarbeiten, verwenden Sie -print0 mit dem Befehl „find“ und -0 mit dem Befehl „xargs“ als Argumente.
# find /tmp -print0 | xargs -0 -L 1 echo
Dieser Artikel ist hier zu Ende. Weitere spannende Inhalte finden Sie in anderen verwandten Kolumnen-Tutorials auf der chinesischen PHP-Website! ! !
Das obige ist der detaillierte Inhalt vonxargs-Befehl und Beispiele unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!