GNU/Linux >> Tutoriels Linux >  >> Linux

xargs --replace/-I pour les arguments simples

Vous pouvez faire écho avec des retours à la ligne pour obtenir le résultat escompté. Dans votre cas, avec l'extension du serveur, ce serait :

$ echo -e server{1..4}"\n" | xargs -I{} echo derp {}
derp server1
derp server2
derp server3
derp server4

Vous pouvez utiliser un tuyau supplémentaire comme celui-ci,

echo a b c d | xargs -n1 | xargs -I{} echo derp {}
derp a
derp b
derp c
derp d

L'utilisation intermédiaire de xargs "écho" à chaque lettre "a b c d" individuellement à cause de l'option "-n1". Cela place chaque lettre sur sa propre ligne comme ceci,

echo a b c d | xargs -n1
a
b
c
d 

Il est important de comprendre que lors de l'utilisation de -I (remplacement de chaîne), xargs implique -L, qui exécute la commande utilitaire (dans votre cas echo) une fois par ligne. De plus, vous ne pouvez pas utiliser -n avec -L car ils s'excluent mutuellement.


Linux
  1. Linux - Limiter l'utilisation de la mémoire pour un seul processus Linux ?

  2. Le but du mot-clé "do" dans Bash For Loops ?

  3. Que signifient les caractères spéciaux dans Echo {a..z} ?

  4. Lire ligne par ligne dans le script bash

  5. xargs peut-il séparer les paramètres ?

Tutoriel de commande Linux echo pour débutants (5 exemples)

Installer le sous-système Windows pour Linux avec une seule commande

Je voudrais stocker tous les arguments de ligne de commande d'un script Bash dans une seule variable

Vérifier la validité IP

Définition de pipefail pour une seule commande canalisée

Limiter l'utilisation de la mémoire pour un seul processus Linux