Exemples sur la façon d'utiliser la commande xargs sur Linux

Exemples sur la façon d'utiliser la commande xargs sur Linux

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 Exigences logicielles et conventions de ligne de commande 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.

  1. 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 chat commande. Comme ce sont les trois seuls fichiers de notre répertoire actuel, nous pouvons utiliser le LS commande pour récupérer les noms de fichiers, puis transmettre ces noms à chat en utilisant xargs.
    $ 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 
  2. Pour voir que la commande xargs s'exécute, vous pouvez utiliser le -t option. 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 
  3. Nous pouvons également utiliser le -p Option, qui nous demandera une confirmation avant d'exécuter la commande. Ceci est pratique à utiliser, par exemple, lors de l'exécution du RM Commande avec xargs, car vous ne voudriez pas supprimer accidentellement de fichiers. Vous pouvez entrer soit y (oui) pour confirmer l'exécution de la commande, ou n (non) pour l'avorter.
    $ ls | xargs -p rm rm 1.txt 2.txt 3.SMS ?… Y 


  4. 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 chacun chat commande séparément en utilisant le -n (Arguments maximaux) Option. Voici un exemple où nous avons également inclus le -t option, nous pouvons donc voir comment cette commande s'exécute chat Trois 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 1 Dans 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 2 plutô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 
  5. xargs peut également exécuter plusieurs commandes si vous utilisez le -je option. 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écutera touche et puis chat sur nos trois fichiers, dont les noms sont transmis à xargs à partir de LS.
    $ 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 
  6. Une autre utilisation pratique de xargs est sa capacité à accepter les entrées des fichiers. Cela se fait avec le -un option. Prenez la commande suivante par exemple où nous passons une liste de noms de fichiers à xargs, puis chat ces 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.SMS ressemble à ça:

    1.txt 2.txt 3.SMS 
  7. L'une des utilisations les plus courantes pour les xargs est lorsqu'il est combiné avec le trouver commande. trouver Comprend déjà le -exécutif option, 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 -print0 option donc un caractère supplémentaire nul est imprimé après chaque nom de fichier. Vous devrez également inclure un -0 option dans le xargs commande. Voici un exemple où nous recherchons .fichiers txt et exécuter chat sur chacun. Encore une fois, nous allons ajouter le -t Option 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