Android

Comment ajouter un répertoire au chemin sous Linux

Tutoriel Windows - variable d'environnement Path

Tutoriel Windows - variable d'environnement Path

Table des matières:

Anonim

Lorsque vous tapez une commande sur la ligne de commande, vous dites essentiellement au shell d'exécuter un fichier exécutable avec le nom donné. Sous Linux, ces programmes exécutables tels que ls , find , file et autres, vivent généralement dans plusieurs répertoires différents de votre système. Tout fichier avec des autorisations exécutables stocké 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 et /usr/local/sbin .

Mais comment le shell sait-il, quels répertoires rechercher les programmes exécutables ou le shell recherche-t-il dans tout le système de fichiers?

La réponse est simple. Lorsque vous tapez une commande, le shell recherche dans tous les répertoires spécifiés dans la variable utilisateur $PATH un fichier exécutable de ce nom.

Cet article montre comment ajouter des répertoires à votre $PATH dans les systèmes Linux.

Qu'est-ce que $PATH sous Linux

La variable d'environnement $PATH est une liste de répertoires séparés par deux points qui indique au shell quels répertoires rechercher les fichiers exécutables.

Pour vérifier quels répertoires se trouvent dans votre $PATH , vous pouvez utiliser la commande printenv ou echo :

echo $PATH

La sortie ressemblera à ceci:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Ajouter un répertoire à votre $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 vous pouvez souhaiter avoir un répertoire dédié pour vos scripts personnels, mais pouvoir les exécuter sans spécifier le chemin absolu vers les fichiers exécutables. Pour ce faire, il vous suffit d'ajouter le répertoire à votre $PATH .

Disons que vous avez un répertoire appelé bin situé dans votre répertoire d'accueil dans lequel vous conservez vos scripts shell. Pour ajouter le répertoire à votre $PATH tapez:

export PATH="$HOME/bin:$PATH"

La commande d'exportation exportera la variable modifiée vers les environnements de processus enfant du shell.

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 la modification permanente, vous devez définir la variable $PATH dans les fichiers de configuration du shell. Dans la plupart des distributions Linux lorsque vous démarrez une nouvelle session, les variables d'environnement sont lues à partir des fichiers suivants:

  • Fichiers de configuration spécifiques au shell global tels que /etc/environment et /etc/profile . Utilisez ce fichier si vous souhaitez que le nouveau répertoire soit ajouté à tous les utilisateurs du système $PATH .

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

Dans cet exemple, nous allons définir la variable dans le fichier ~/.bashrc . Ouvrez le fichier avec votre éditeur de texte et ajoutez la ligne suivante à la fin:

nano ~/.bashrc ~ /.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

Pour confirmer que le répertoire a bien été ajouté, imprimez la valeur de votre $PATH en tapant:

echo $PATH

Conclusion

Ajouter de nouveaux répertoires à votre utilisateur ou à la variable globale $PATH est assez simple. Cela vous permet d'exécuter des commandes et des scripts stockés sur des emplacements non standard sans avoir à taper le chemin d'accès complet à l'exécutable.

Les mêmes instructions s'appliquent à toute distribution Linux, y compris Ubuntu, CentOS, RHEL, Debian et Linux Mint.

N'hésitez pas à laisser un commentaire si vous avez des questions.

Terminal