Vous pouvez le faire simplement en le déclarant comme nouveau dans la ligne de commande ou en le déclarant à nouveau. Par exemple, si vous voulez ajouter ~/testfolder
à votre variable de chemin d'accès, vous pouvez simplement l'entrer dans votre terminal actuel (ceci n'est qu'un exemple):
PATH="$HOME/testfolder:$PATH"
Cela ne changera bien sûr que le temps d’ouverture de la session de terminal. Notez l'utilisation de $
ici, vous la laissez pour la déclaration, mais si vous voulez l'afficher, vous devez ajouter $
pour développer son contenu.
Si vous souhaitez les déclarer plus durables et plus générales, vous pouvez les ajouter dans votre fichier ~/.bashrc
(uniquement pour vous) ou dans /etc/bash.bashrc
(à l’échelle du système), par exemple si vous souhaitez qu’ils comptent uniquement pour vous ou pour tous les utilisateurs. Une autre option consiste à l'ajouter à votre fichier .profile
(uniquement pour vous) où il sera viable à partir du moment où vous vous connectez. Vous pouvez le faire avec echo
par exemple si vous êtes sûr que cette variable n'est pas déjà définie ou si vous en créez de nouveaux (seulement un exemple):
echo "variable=value" >> /path/filename
Si vous souhaitez toutefois modifier un fichier en dehors de votre répertoire utilisateur, ce qui est le cas lorsque vous souhaitez modifier /etc/bash.bashrc
, vous devez utiliser sudo
et vous ne pouvez donc pas utiliser simplement un document ici, car cela ne fonctionnerait pas , utilisez plutôt une ligne comme ci-dessous:
echo "variable=value" | sudo tee -a /path/filename
Si la variable existe déjà, vous pouvez la modifier avec la commande sed
(également un exemple):
sed -i.bak 's/variable=value/variable=new-value/' /path/filename
Cela va modifier la variable dans le fichier mais en créer une sauvegarde avant la modification. Si vous modifiez des fichiers en dehors de votre répertoire utilisateur avec sed, vous devez utiliser sudo
dans la plupart des cas afin que la ligne soit:
sudo sed -i.bak 's/variable=value/variable=new-value/' /path/filename
La suppression d’une variable d’un fichier peut également se faire avec sed
, il suffit de laisser la seconde partie de la regex vide:
sed -i.bak 's/variable=value//' /path/filename
Si vous êtes intéressé par les variables d’environnement définies, vous pouvez utiliser la commande env
pour les répertorier, ( set -o posix ; set ) | less
ou sh -c set
. Tous les trois donnent différentes quantités de résultats, ( set -o posix ; set ) | less
renvoyant le plus grand nombre de variables réellement définies.