GNU/Linux >> Tutoriels Linux >  >> Linux

Comment affecter la sortie d'une commande Linux à une variable

Lorsque vous exécutez une commande, elle produit une sorte de sortie :soit le résultat qu'un programme est supposé produire, soit des messages d'état/d'erreur des détails d'exécution du programme. Parfois, vous souhaiterez peut-être stocker la sortie d'une commande dans une variable à utiliser dans une opération ultérieure.

Dans cet article, nous passerons en revue les différentes manières d'affecter la sortie d'une commande shell à une variable, particulièrement utile à des fins de script shell.

Pour stocker la sortie d'une commande dans une variable, vous pouvez utiliser la fonctionnalité de substitution de commande shell dans les formulaires ci-dessous :

variable_name=$(command)
variable_name=$(command [option ...] arg1 arg2 ...)
OR
variable_name='command'
variable_name='command [option ...] arg1 arg2 ...'

Vous trouverez ci-dessous quelques exemples d'utilisation de la substitution de commande.

Dans ce premier exemple, nous allons stocker la valeur de who (qui montre qui est connecté au système) commande dans la variable CURRENT_USERS utilisateur :

$ CURRENT_USERS=$(who)

Ensuite, nous pouvons utiliser la variable dans une phrase affichée à l'aide de la commande echo comme ceci :

$ echo -e "The following users are logged on the system:\n\n $CURRENT_USERS"

Dans la commande ci-dessus :le drapeau -e signifie interpréter toutes les séquences d'échappement (telles que \n pour la nouvelle ligne) utilisé. Pour éviter de perdre du temps et de la mémoire, effectuez simplement la substitution de commande dans la commande echo comme suit :

$ echo -e "The following users are logged on the system:\n\n $(who)"

Ensuite, pour démontrer le concept en utilisant le deuxième formulaire ; nous pouvons stocker le nombre total de fichiers dans le répertoire de travail actuel dans une variable appelée FILES et écho plus tard comme suit :

$ FILES=`sudo find . -type f -print | wc -l`
$ echo "There are $FILES in the current working directory."

C'est tout pour l'instant, dans cet article, nous avons expliqué les méthodes d'assignation de la sortie d'une commande shell à une variable. Vous pouvez ajouter vos réflexions à ce message via la section de commentaires ci-dessous.


Linux
  1. Comment enregistrer la sortie de la commande dans un fichier sous Linux

  2. Comment renommer des fichiers sous Linux

  3. Comment créer un script d'une commande Linux

  4. Comment affecter la sortie d'une commande à une variable Shell ?

  5. Comment imprimer la sortie de la commande Linux dans un fichier ?

Comment utiliser du Command sous Linux

Comment enregistrer la sortie de la commande Linux dans une image ou un fichier texte

Commande iftop sous Linux

Commande lsblk sous Linux

Comment créer un alias sous Linux

Comment stocker une commande Linux en tant que variable dans un script shell