GNU/Linux >> Tutoriels Linux >  >> Linux

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

Si votre travail implique de faire des choses via la ligne de commande sous Linux, il est plus probable qu'improbable que vous utiliserez le shell Bash. Saviez-vous qu'il existe un environnement associé aux processus exécutés via le shell ? Et, si vous le souhaitez, vous pouvez modifier cet environnement spécifiquement pour la tâche que vous effectuez ? Eh bien, dans cet article, nous discuterons d'un outil de ligne de commande - env - qui vous permet non seulement d'accéder à l'environnement shell, mais vous permet également d'y apporter des modifications si nécessaire.

Mais avant cela, il convient de mentionner que toutes les commandes et instructions mentionnées dans ce didacticiel ont été testées sur le shell Bash exécuté sur Ubuntu 16.04LTS.

Commande d'environnement Linux

Par définition, la commande env vous permet d'exécuter un programme dans un environnement modifié. Voici la syntaxe de la commande, comme mentionné sur sa page de manuel :

env [OPTION]... [-] [NOM=VALEUR]... [COMMANDE [ARG]...]

Et voici ce que dit la page de manuel à propos de env :

Définissez chaque NAME sur VALUE dans l'environnement et exécutez COMMAND.

Les exemples de style Q&R suivants devraient vous donner une meilleure idée du fonctionnement de cette commande :

Q1. Comment accéder à toutes les variables d'environnement à l'aide de la commande env ?

L'environnement Bash, comme vous le savez peut-être déjà, se compose d'entrées VARNAME=VALUE. Pour accéder à toutes les variables d'environnement ainsi qu'aux valeurs qui leur sont associées, exécutez la commande env sans aucune option.

env

Voici le résultat de la commande ci-dessus dans notre cas :

Q2. Comment changer temporairement d'environnement en utilisant env ?

La fonctionnalité clé offerte par env est la possibilité de modifier temporairement l'environnement d'un processus. Par exemple, nous avons créé un petit exécutable - appelé env - qui affiche la valeur de la variable d'environnement USER lors de l'exécution.

Voici le résultat dans un scénario normal :

Maintenant, ce que nous avons fait, nous avons utilisé la commande env pour changer temporairement la valeur de la variable d'environnement USER de 'himanshu' à 'HTF' pour l'exécutable/processus. Voici la commande que nous avons utilisée dans ce cas :

env USER=HTF ./env

Et voici la sortie produite dans ce cas :

Vous pouvez donc voir que l'exécutable a renvoyé la nouvelle valeur.

Remarque :Comme le suggère la syntaxe générique de l'outil, vous pouvez modifier les valeurs de plusieurs variables d'environnement et faire en sorte que le processus utilise ces nouvelles valeurs.

Q3. Comment faire en sorte qu'un processus ignore l'environnement existant en utilisant env ?

Si vous le souhaitez, vous pouvez également faire en sorte qu'un processus ignore l'environnement existant/hérité et démarre avec un environnement vide à la place. Cela peut être fait en utilisant le -i ou --ignore-environment option.

Par exemple :

Q4. Comment faire env utiliser NUL au lieu du caractère de saut de ligne dans la sortie ?

Dans le premier exemple dont nous avons discuté ci-dessus, les lignes de sortie produites par env sont séparées par une nouvelle ligne. Cependant, si vous le souhaitez, vous pouvez faire env utiliser le caractère NUL comme séparateur. Cette fonctionnalité est accessible à l'aide de la balise --null option de ligne de commande.

env --null

Voici un exemple de capture d'écran :

Q5. Comment connaître l'erreur basée sur l'état de sortie de la commande env ?

La commande env produit les codes de sortie suivants :0, 125, 126 et 127. Voici les descriptions d'erreur associées :

0   si aucune COMMANDE n'est spécifiée et que l'environnement est généré
125 si 'env' lui-même échoue
126 si COMMANDE est trouvée mais ne peut pas être invoquée
127 si COMMANDE est introuvable

Si vous obtenez un code d'erreur autre que ceux mentionnés ci-dessus, il s'agit du statut de sortie renvoyé par le processus/la commande qui a été exécuté avec un environnement modifié.

Conclusion

Si vous êtes un débutant complet en ligne de commande, il y a de fortes chances que vous n'ayez pas besoin de cet outil quotidiennement. Cependant, cela ne veut pas dire que cela ne vaut pas la peine d'être connu - en fait, env est très pratique dans de nombreuses situations. Les exemples que nous avons partagés dans ce didacticiel devraient suffire à vous donner une longueur d'avance. Pour plus d'informations, rendez-vous sur la page de manuel de la commande, ou mieux, exécutez la commande suivante :

invocation d'info coreutils env

Linux
  1. Tutoriel de commande cd Linux pour les débutants (8 exemples)

  2. Tutoriel de commande Linux comm pour les débutants (5 exemples)

  3. Tutoriel de commande Linux df pour les débutants (8 exemples)

  4. Tutoriel de commande de date Linux pour les débutants (8 exemples)

  5. Tutoriel de commande de nom d'hôte Linux pour les débutants (5 exemples)

Tutoriel de commande Linux nl pour les débutants (7 exemples)

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

Tutoriel de commande Linux nm pour les débutants (10 exemples)

Tutoriel de commande Linux OD pour les débutants (6 exemples)

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

Tutoriel de commande Linux ss pour les débutants (8 exemples)