Exemples sur la façon d'utiliser la commande xargs sur Linux
- 2714
- 106
- Clara Nguyen
Le xargs La commande Linux permet à un utilisateur d'exécuter des lignes de commande à partir de l'entrée standard. Si cela semble déroutant, il pourrait être plus facile de regarder un exemple de base. La commande suivante utiliserait xargs pour chat Tous les fichiers répertoriés par le LS commande.
$ ls 1.txt 2.txt 3.txt $ ls | xargs chat Ceci est fichier1 c'est fichier2 c'est un fichier3
Dans la commande ci-dessus, nous avons canalisé la sortie de la commande LS à Xargs et utilisé la commande Cat pour répertorier le contenu dans chacun des trois fichiers. La plupart des utilisations des xargs impliquent une tuyauterie à partir d'une commande différente et l'utiliser pour exécuter une autre commande successivement. Si vous souhaitez commencer par des exemples de base supplémentaires, vérifiez nos guides sur XARGS pour les débutants ou les exemples de XARG multithread.
Dans ce guide, nous passerons par divers exemples de ligne de commande de la commande xargs, afin que vous puissiez apprendre à l'utiliser efficacement sur un système Linux. Suivez alors que nous passons en revue les bases et les aspects plus compliqués de la commande xargs.
Dans ce tutoriel, vous apprendrez:
- Comment utiliser la commande xargs sur Linux, à travers des exemples
Divers exemples de commande xargs sur Linux | Catégorie | Exigences, conventions ou version logicielle utilisée |
|---|---|
| Système | Toute distribution Linux |
| Logiciel | commande xargs |
| Autre | Accès privilégié à votre système Linux en tant que racine ou via le Sudo commande. |
| Conventions | # - Exige que les commandes Linux soient exécutées avec des privilèges racine soit directement en tant qu'utilisateur racine, soit par l'utilisation de Sudo commande$ - Exige que les commandes Linux soient exécutées en tant qu'utilisateur non privilégié régulier |
Exemples de commande xargs
Suivez les exemples ci-dessous pour voir comment utiliser les Xargs dans divers scénarios sur Linux.
- Revenons à notre exemple original pour expliquer exactement ce qui se passe lorsque nous exécutons la commande xargs. À l'heure actuelle, nous avons trois fichiers texte, et l'objectif est de visualiser le contenu des trois avec le
chatcommande. Comme ce sont les trois seuls fichiers de notre répertoire actuel, nous pouvons utiliser leLScommande pour récupérer les noms de fichiers, puis transmettre ces noms àchaten utilisantxargs.$ ls | xargs chat Ceci est fichier1 c'est fichier2 c'est un fichier3
Ce qui se passe vraiment ici équivaut à la commande suivante:
$ Cat 1.txt 2.txt 3.SMS
- Pour voir que la commande xargs s'exécute, vous pouvez utiliser le
-toption. Cela exécutera toujours la commande, mais cela nous donne un moyen de voir comment la commande finale a réellement été formatée.$ ls | xargs -t chat chat 1.txt 2.txt 3.txt c'est fichier1 c'est fichier2 c'est fichier3
- Nous pouvons également utiliser le
-pOption, qui nous demandera une confirmation avant d'exécuter la commande. Ceci est pratique à utiliser, par exemple, lors de l'exécution duRMCommande avec xargs, car vous ne voudriez pas supprimer accidentellement de fichiers. Vous pouvez entrer soity(oui) pour confirmer l'exécution de la commande, oun(non) pour l'avorter.$ ls | xargs -p rm rm 1.txt 2.txt 3.SMS ?… Y
- Dans notre exemple précédent, Xargs exécute
chat 1.txt 2.txt 3.SMS. En d'autres termes, il s'agit uniquement d'exécuter une seule commande et tous les noms de fichiers sont annexés. Nous pouvons faire fonctionner les xargs chacunchatcommande séparément en utilisant le-n(Arguments maximaux) Option. Voici un exemple où nous avons également inclus le-toption, nous pouvons donc voir comment cette commande s'exécutechatTrois fois distinctes, par opposition à une seule fois.$ ls | xargs -t -n 1 chat chat 1.txt c'est fichier1 cat 2.txt c'est file2 cat 3.txt c'est un fichier3
Le
-n 1Dans ce cas, l'option indique à xargs qu'il ne peut utiliser qu'un seul nom de fichier à la fois (maximum). Voici comment cela différerait si nous utilisons-n 2plutôt.$ ls | xargs -t -n 2 chat chat 1.txt 2.txt c'est fichier1 c'est un fichier2 cat 3.txt c'est un fichier3
- xargs peut également exécuter plusieurs commandes si vous utilisez le
-jeoption. Vous devez spécifier une «chaîne de rechange» à utiliser par cette option. Un signe très courant est un signe en pourcentage, que nous utilisons ci-dessous. Pour un exemple simple, la commande suivante s'exécuteratoucheet puischatsur nos trois fichiers, dont les noms sont transmis à xargs à partir deLS.$ ls | xargs -t -i% sh -c 'Touch%; chat %; 'sh -c' Touch 1.SMS; chat 1.SMS; 'Ceci est file1 sh -c' Touch 2.SMS; chat 2.SMS; 'Ceci est file2 sh -c' Touch 3.SMS; chat 3.SMS; 'Ceci est un fichier3
- Une autre utilisation pratique de xargs est sa capacité à accepter les entrées des fichiers. Cela se fait avec le
-unoption. Prenez la commande suivante par exemple où nous passons une liste de noms de fichiers à xargs, puischatces fichiers.$ xargs -a fichiers.txt chat chat 1.txt 2.txt 3.txt c'est fichier1 c'est fichier2 c'est fichier3
Comme vous pouvez probablement deviner, le contenu de
déposer.SMSressemble à ça:1.txt 2.txt 3.SMS
- L'une des utilisations les plus courantes pour les xargs est lorsqu'il est combiné avec le
trouvercommande.trouverComprend déjà le-exécutifoption, il est en mesure d'exécuter des commandes sur tous les fichiers qu'il trouve, mais Xargs est beaucoup plus efficace. Dans votre commande de recherche, vous devriez ajouter le-print0option donc un caractère supplémentaire nul est imprimé après chaque nom de fichier. Vous devrez également inclure un-0option dans lexargscommande. Voici un exemple où nous recherchons .fichiers txt et exécuterchatsur chacun. Encore une fois, nous allons ajouter le-tOption pour voir la commande xargs finit par fonctionner.$ trouver . -nom "*.txt "-print0 | xargs -t -0 chat chat ./ 3.SMS ./ 2.SMS ./1.txt c'est fichier3 c'est fichier2 c'est un fichier1
Ces exemples devraient être suffisants pour vous aider à tirer le meilleur parti de la commande xargs. Vous pouvez faire beaucoup avec la commande et les tonnes de scénarios différents où il peut être utile. Si vous souhaitez en savoir plus, il est recommandé de consulter la page de l'homme pour plus d'exemples d'utilisation.
$ man xargs
Réflexions de clôture
Dans ce guide, nous avons vu comment utiliser la commande xargs à travers divers exemples sur Linux. Nous l'avons combiné avec plusieurs autres commandes, et avons également appris à l'utiliser pour lire le contenu d'un fichier. La commande xargs a des applications différentes infinies et s'avère être l'un des outils les plus polyvalents de la ligne de commande Linux.
Tutoriels Linux connexes:
- xargs pour les débutants avec des exemples
- Xargs multithreads avec des exemples
- Commandes Linux de base
- Commandes Linux: les 20 meilleures commandes les plus importantes que vous devez…
- Comment utiliser la commande ps dans Linux: Guide des débutants
- Commande man dans Linux avec des exemples
- Choses à installer sur Ubuntu 20.04
- Gestion de la saisie des utilisateurs dans les scripts bash
- Comment renommer plusieurs fichiers sur Linux
- Comment imprimer l'arbre du répertoire à l'aide de Linux
- « Comment utiliser Curl pour obtenir une adresse IP publique
- Comment définir et répertorier les variables d'environnement sur Linux »