PATH: Comment y ajouter un répertoire sous Linux

PATH est une variable qui vous permet d’exécuter vos scripts en tapant simplement son nom sans avoir besoin de spécifier le chemin absolu de la commande, voyons voir ce que cela veux dire.

Lorsque vous tapez une commande sur la ligne de commande, vous dites  au shell d’exécuter un fichier exécutable ayant le nom donné, Sous Linux, ces programmes exécutables tels que ls, find, , sont généralement dans plusieurs répertoires différents de votre système, Tout fichier avec des droit d’exécutions  ( –x)  stockées dans ces répertoires peut être exécuté à partir de n’importe quel emplacement.
Les répertoires les plus courants qui contiennent des programmes exécutables sont : /bin, /sbin, /usr/sbin, /usr/local/bin and /usr/local/sbin.

Mais comment le shell sait-il dans quel répertoire doit chercher, ou bien est ce que le shell cherche-t-il dans tous ces répertoire ?

La réponse est simple, Lorsque vous tapez une commande, le shell recherche dans tous les répertoires que j’ai précisé précédemment et  spécifiés dans une variable nommé $PATH.

Si vous taper une commande dont l’emplacement n’est pas spécifié dans la variable $PATH, le shell vous alors que cette commande est introuvable et vous devrez alors taper la commande en indiquant au shell son chemin.
Dans ce guide nous allons voir comment ajouter un répertoire à la variable $PATH.

Qu’est-ce que $PATH ?

La variable $PATH indique au Shell les répertoires sur lesquels doit chercher afin trouver le programme de la commande tapée.

Pour afficher le contenu de la variable PATH, utiliser la commande echo :

# echo $PATH

Ajouter un répertoire à la valeur $PATH :

Dans certains cas, vous souhaiterez peut-être ajouter d’autres répertoires à la variable $PATH. Par exemple, certains programmes peuvent être installés à différents emplacements ou bien vous souhaitez avoir un répertoire dédié pour vos scripts personnels et vous souhaitez les exécuter sans spécifier le chemin absolu vers ces fichiers exécutables. Pour ce faire, il vous suffit d’ajouter le répertoire à votre $PATH:

Supposant que vous avez créé des scriptes et vous les mettez dans le répertoire Scripte situé dans votre répertoire home, voici comment ajouter ce répertoire au variable $PATH :

#export PATH="$HOME/Scripte:$PATH"

Vous pouvez maintenant exécuter vos scripts en tapant simplement le nom du script exécutable sans avoir besoin de spécifier le chemin d’accès complet de l’exécutable.

Cependant, cette modification n’est que temporaire et valide uniquement dans la session shell en cours.

Pour rendre les modification permanente, vous devez définir la variable $ PATH dans les fichiers de configuration du shell.

les variables d’environnement sont lues à partir des fichiers suivants :

-Fichiers de configuration global tels que /etc/environment et /etc/profile. Utilisez ces fichier si vous souhaitez que le nouveau répertoire soit ajouté à tous les utilisateurs du système.

-Fichiers de configuration par utilisateur. Par exemple, si vous utilisez le shell Bash, vous pouvez définir la variable $PATH dans le fichier ~/.bashrc et si vous utilisez Zsh, le nom du fichier est ~ /.zshrc :

#vim ~/.bashrc
export PATH="$HOME/bin:$PATH"

Enregistrez le fichier et chargez le nouveau $ PATH dans la session shell actuelle à l’aide de la commande source:

#source ~/.bashrc

Afficher la valur de $PATH pour s’assurer que le dossier a été bien ajouté :

#echo $PATH