envsubst remplace les variables d'environnement dans une chaîne ou un script shell. Lorsqu'il est utilisé sans option, copie stdin vers stdout, en remplaçant toute chaîne de variable d'environnement, telle que $VARIABLE ou ${VARIABLE}, par la valeur de variable d'environnement appropriée. Ainsi, "Mon éditeur est $EDITOR" serait converti en "Mon éditeur est /usr/bin/emacs". La spécification d'un format shell limite les substitutions aux variables référencées dans le format shell.
options de ligne de commande envsubst
La commande envsubst a très peu d'options comme indiqué ci-dessous :
Option | Description |
---|---|
-h, –help | Imprimer le message d'aide puis quitter. |
-v, –variables | Afficher les variables référencées dans le format shell, puis quitter. |
-V, –version | Imprimer les informations de version puis quitter. |
Si vous obtenez une erreur comme indiqué ci-dessous lors de l'exécution de la commande envsubst :
envsubst: command not found
vous pouvez essayer d'installer le gettext package selon votre choix de distribution.
Répartition | Commande |
---|---|
OS X | brew install gettext |
Debian | apt-get install gettext-base |
Ubuntu | apt-get install gettext-base |
Alpin | apk ajouter gettext |
Arch Linux | pacman -S gettext |
Kali Linux | apt-get install gettext-base |
CentOS | yum installer gettext |
Fédora | dnf installer gettext |
Raspbian | apt-get install gettext-base |
Exemples de commande envsubst
1. Remplacez les variables d'environnement dans stdin et sortie sur stdout :
$ echo '$HOME' | envsubst
2. Remplacez les variables d'environnement dans un fichier d'entrée et sortie sur stdout :
$ envsubst < path/to/input_file
3. Remplacez les variables d'environnement dans un fichier d'entrée et la sortie dans un fichier :
$ envsubst < path/to/input_file > path/to/output_file
4. Remplacez les variables d'environnement dans un fichier d'entrée à partir d'une liste séparée par des espaces :
$ envsubst '$USER $SHELL $HOME' < path/to/input_file