12 Praktische Beispiele für Linux Xargs Command für Anfänger
Es gibt verschiedene Möglichkeiten, wie xargs ist nützlich im täglichen Gebrauch der Kommandozeile. In diesem Artikel werden 12 praktische Linux xargs-Befehlsbeispiele für Anfänger erläutert.
1. Das erste Beispiel zeigt, wie Sie alle herausfinden .png
Bilder und archivieren Sie sie mit dem Dienstprogramm tar wie folgt.
Hier der Aktionsbefehl -print0
Ermöglicht das Drucken des vollständigen Dateipfads in der Standardausgabe, gefolgt von einem Nullzeichen und -0
Das xargs-Flag behandelt effektiv das Leerzeichen in Dateinamen.
$ find Pictures/tecmint/ -name "*.png" -type f -print0 | xargs -0 tar -cvzf images.tar.gz

2. Sie können auch die mehrzeilige Ausgabe des Befehls ls mit in eine einzelne Zeile konvertieren xargs wie folgt.
$ ls -1 Pictures/tecmint/ $ ls -1 Pictures/tecmint/ | xargs

3. Verwenden Sie den folgenden Befehl, um eine kompakte Liste aller Linux-Benutzerkonten auf dem System zu erstellen.
$ cut -d: -f1 < /etc/passwd | sort | xargs

4. Angenommen, Sie haben eine Liste von Dateien und möchten die Anzahl der Dateien wissen Zeilen / Wörter / Zeichen In jeder Datei in der Liste können Sie den Befehl ls und verwenden xargs zu diesem Zweck wie folgt.
$ ls *upload* | xargs wc

5. Mit Xarags können Sie auch ein Verzeichnis suchen und rekursiv entfernen. Mit dem folgenden Befehl wird beispielsweise rekursiv entfernt DomTerm im Verzeichnis Downloads.
$ find Downloads -name "DomTerm" -type d -print0 | xargs -0 /bin/rm -v -rf "{}"

6. Ähnlich wie beim vorherigen Befehl können Sie auch alle benannten Dateien finden net_stats im aktuellen Verzeichnis und löschen Sie sie.
$ find . -name "net_stats" -type f -print0 | xargs -0 /bin/rm -v -rf "{}"
7. Als nächstes verwenden xargs eine Datei gleichzeitig in mehrere Verzeichnisse zu kopieren; In diesem Beispiel versuchen wir, die Datei zu kopieren.
$ echo ./Templates/ ./Documents/ | xargs -n 1 cp -v ./Downloads/SIC_Template.xlsx

8. Sie können auch den Befehl find verwenden. xargs und benennen Sie Befehle zusammen um, um alle Dateien oder Unterverzeichnisse in einem bestimmten Verzeichnis wie folgt in Kleinbuchstaben umzubenennen.
$ find Documnets -depth | xargs -n 1 rename -v 's/(.*)/([^/]*)/$1/L$2/' {} ;
9. Hier ist ein weiteres nützliches Anwendungsbeispiel für xargsHier wird gezeigt, wie alle Dateien in einem Verzeichnis mit Ausnahme einer oder weniger Dateien mit einer bestimmten Erweiterung gelöscht werden.
$ find . -type f -not -name '*gz' -print0 | xargs -0 -I {} rm -v {}
10. Wie bereits erwähnt, können Sie anweisen xargs um Elemente aus einer Datei anstelle von Standardeingaben mit dem zu lesen -a
Flagge wie gezeigt.
$ xargs -a rss_links.txt
11. Sie können die Ausführlichkeit mit dem aktivieren -t
Flagge, die erzählt xargs um die Befehlszeile in der Standardfehlerausgabe zu drucken, bevor sie ausgeführt wird.
$ find Downloads -name "DomTerm" -type d -print0 | xargs -0 -t /bin/rm -rf "{}"
12. Standardmäßig, xargs Beendet / begrenzt Elemente mithilfe von Leerzeichen. Sie können die verwenden -d
Flag, um das Trennzeichen zu setzen, das ein einzelnes Zeichen sein kann, ein C-Zeichen-Escape wie z n
oder ein oktaler oder hexadezimaler Escape-Code.
Darüber hinaus können Sie den Benutzer mithilfe der Taste auffordern, ob jede Befehlszeile ausgeführt und eine Zeile vom Terminal gelesen werden soll -p
Flag wie gezeigt (einfach eingeben y
zum Ja oder n
zum Nein).
$ echo ./Templates/ ./Documents/ | xargs -p -n 1 cp -v ./Downloads/SIC_Template.xlsx

Weitere Informationen finden Sie in der xargs Manpage.
$ man xargs
Das war es fürs Erste! Xargs ist ein leistungsstarkes Dienstprogramm zum Erstellen einer Befehlszeile. Es kann Ihnen helfen, die Ausgabe eines Befehls als Argument eines anderen Befehls zur Verarbeitung zu übergeben. In diesem Artikel haben wir 12 praktische xargs-Befehlsbeispiele für Anfänger erläutert. Teilen Sie uns Ihre Gedanken oder Fragen über das unten stehende Feedback-Formular mit.