GNU/Linux >> Tutoriels Linux >  >> Linux

Comment utiliser la commande xargs sous Linux ?

La commande xargs nous permet de passer la sortie d'une commande comme entrée d'une autre commande sans avoir à écrire la sortie dans un fichier.

Certaines tâches qui peuvent nécessiter l'utilisation de plusieurs commandes qui renvoient les sorties d'autres commandes seront grandement facilitées par l'utilisation de xargs. Voyons comment comprendre la commande et certaines des utilisations de la commande aujourd'hui.

Qu'est-ce que xarg ?

Xargs vous permet de transmettre les sorties en entrée à une autre commande. Alors qu'une commande comme grep permet à l'utilisateur d'utiliser des entrées comme paramètres, xargs montre son importance en permettant à l'entrée d'être sous la forme d'arguments.

Cette commande est presque toujours utilisée en combinaison avec d'autres commandes à l'aide de tuyauterie. Comprenons l'utilisation de base de la commande.

Principes de base de la commande xargs sous Linux

La meilleure façon de comprendre une commande est de comprendre sa syntaxe. Voici à quoi ressemble la syntaxe de la commande xargs sous Linux.

xargs [option] [command]

Ici, la [commande] peut être n'importe quelle(s) commande(s) que nous souhaitons exécuter sur notre entrée standard. Si nous ne spécifions pas les commandes, l'utilitaire xargs utilise la commande par défaut.

La commande par défaut de l'utilitaire xargs est "echo".

L'utilitaire xargs permet à plusieurs options de dicter la façon dont les commandes sont construites et exécutées. Voici une liste de certaines des options couramment utilisées offertes par l'utilitaire xargs sous Linux.

Option Effet
-0 Cette option est utilisée pour spécifier à l'utilitaire xargs que les éléments de la chaîne d'entrée standard se terminent par un caractère NULL au lieu d'un espace blanc.
-a nom de fichier Lire depuis le fichier
-r Ne pas exécuter si l'entrée est vide
-d délim Spécifier un délimiteur
-x Quitter si la taille d'entrée spécifiée par -s est dépassé.
-je remplace-str Ceci est utilisé pour déclarer une chaîne comme replace-str. Ensuite, toutes les occurrences de replace-str sont remplacées par le paramètre ou l'argument de l'entrée standard.
–aide Cette option est utilisée pour afficher le message d'aide de l'utilitaire xargs. Cela inclut toutes les options possibles qui peuvent être utilisées avec l'utilitaire xargs.

Bien que cette liste couvre les options de base utilisées dans l'utilitaire xargs. N'oubliez pas d'explorer la page de manuel de xargs.

Utiliser la commande xargs

Nous avons maintenant développé une compréhension de la commande xargs sous Linux et de ses paramètres. Il est temps d'utiliser ces connaissances pour l'application de l'utilitaire xargs. Pour ce didacticiel, nous allons passer en revue quelques exemples pour apprendre à utiliser l'utilitaire xargs.

Le comportement par défaut de xargs

Comme nous l'avons mentionné précédemment, la commande xargs exécutera la commande echo par défaut pour les arguments d'entrée si aucune commande n'est spécifiée après.

Voyons cela en action pour vérifier notre affirmation.

ls -ls | xargs

Comme vous pouvez le voir dans la capture d'écran ci-dessus, la sortie de la commande ls est imprimée sans les sauts de ligne ni la mise en forme lorsqu'elle est transmise par echo et la commande xargs.

Créer plusieurs répertoires à l'aide d'un fichier avec une liste de noms

Si vous avez la liste des noms sur une seule ligne, vous pouvez copier et coller les noms de répertoires séparés par des espaces et la commande mkdir créera les répertoires.

Mais que se passe-t-il si nous avons un fichier avec la liste de tous les noms de répertoires que nous voulons créer ? Voyons comment créer plusieurs répertoires à partir d'une liste de noms de répertoires.

cat <filename> | xargs mkdir

Comme vous pouvez le voir dans la capture d'écran ci-dessus, nous avons essayé de diriger directement la sortie de la commande cat vers mkdir et avons échoué. Mais avec l'ajout de xargs, nous avons pu exécuter la commande et créer avec succès les répertoires.

Rechercher des fichiers contenant une chaîne spécifique

Grep peut rechercher des chaînes dans des fichiers ou des messages de sortie. Mais il ne peut pas rechercher de fichiers. La commande find peut rechercher des fichiers, mais pas leur contenu. La commande xargs peut aider à connecter les deux ensemble.

find <search directory> -name "<name>" | xargs grep -E 'fatal|Warning'

Nous avons recherché le fichier "syslog" dans le répertoire /var/log et recherché les lignes contenant les mots "fatal" ou "Warning". Puisque nous connaissions le fichier que nous voulions dans ce cas, nous aurions pu le transmettre directement à grep. Mais si nous ne connaissions pas le chemin du fichier, la commande find peut être utilisée pour trouver le fichier et transmettre les chemins à grep.

Supprimer les fichiers ayant des extensions spécifiques

Comme pour créer et identifier des fichiers et des répertoires, l'utilitaire xargs est également utile pour se débarrasser des fichiers de votre système. Pour cet exemple, nous allons supprimer tous les fichiers texte présents dans notre répertoire courant.

find <path> -name <filename> | xargs rm -rf

Ici, la trouver La commande recherche d'abord les fichiers portant l'extension .txt. Cette sortie est ensuite envoyée au rm commande.

Cette commande récupère les fichiers de find commande et les supprime. La sortie de l'exécution réussie de cette commande devrait donner une sortie similaire à celle donnée ci-dessous.

Conclusion

La commande xargs sous Linux est un outil puissant pour créer et exécuter des commandes à l'aide d'une entrée standard via votre ligne de commande. Cela rend votre utilisation de la ligne de commande efficace en vous permettant d'utiliser la sortie d'une commande à la place d'un argument dans une autre commande.

Cet utilitaire de ligne de commande est largement utilisé régulièrement par les utilisateurs Linux débutants et expérimentés.

Nous espérons que ce tutoriel a pu vous aider à comprendre la commande xargs sous Linux. Nous n'avons abordé que l'utilisation de base de l'utilitaire xargs dans ce didacticiel, alors assurez-vous d'explorer la commande par vous-même.

Si vous avez des commentaires, des questions ou des suggestions, n'hésitez pas à nous contacter dans les commentaires ci-dessous.


Linux
  1. Comment utiliser la commande Linux sed

  2. Comment utiliser la commande Linux grep

  3. Comment utiliser la commande history sous Linux

  4. Comment utiliser la commande Su sous Linux

  5. Comment utiliser la commande id sous Linux

Comment utiliser la commande Linux Ping

Comment utiliser la commande Linux Top

Comment utiliser la commande fd sur le système Linux

Comment utiliser la commande wget sous Linux ?

Comment utiliser la commande RPM sous Linux

Comment utiliser la commande which sous Linux