GNU/Linux >> Tutoriels Linux >  >> Linux

Comment ajouter un répertoire à PATH sous Linux

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 comme ls , find , file et d'autres, vivent généralement dans plusieurs répertoires différents de votre système. Tout fichier avec des autorisations exécutables stockées dans ces répertoires peut être exécuté à partir de n'importe quel emplacement. Les répertoires les plus courants contenant des programmes exécutables sont /bin , /sbin , /usr/sbin , /usr/local/bin et /usr/local/sbin .

Mais comment le shell sait-il dans quels répertoires rechercher les programmes exécutables ? 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 l'utilisateur $PATH variable pour 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 #

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

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

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

Si vous avez deux fichiers exécutables partageant le même nom situés dans deux répertoires différents, le shell exécutera le fichier qui se trouve dans le répertoire qui vient en premier dans le $PATH .

Ajout d'un répertoire à votre $PATH #

Il y a des situations où vous voudrez peut-être ajouter d'autres répertoires au $PATH variable. Par exemple, certains programmes peuvent être installés à des emplacements différents, 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 cela, il vous suffit d'ajouter le répertoire à votre $PATH .

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

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

Le export La commande exportera la variable modifiée vers les environnements de processus shell enfants.

Vous pouvez désormais exécuter vos scripts en saisissant le nom du script exécutable sans avoir à spécifier le chemin d'accès complet au fichier.

Cependant, ce changement n'est que temporaire et valide uniquement dans la session shell en cours.

Pour rendre le changement permanent, vous devez définir le $PATH variable 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 le $PATH variable dans le ~/.bashrc dossier. Si vous utilisez Zsh, le nom du fichier est ~/.zshrc .

Dans cet exemple, nous allons définir la variable dans le ~/.bashrc dossier. 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 en cours en utilisant le source commande :

source ~/.bashrc

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

echo $PATH

Conclusion #

Ajout de nouveaux répertoires à votre utilisateur ou global $PATH variable est assez simple. Cela vous permet d'exécuter des commandes et des scripts stockés dans des emplacements non standard sans avoir à saisir 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.


Linux
  1. Comment définir votre variable $PATH sous Linux

  2. Comment ajouter un répertoire à PATH sous Linux [avec exemples]

  3. Comment changer de shell sous Linux

  4. Comment ajouter un fichier .so au java.library.path sous Linux

  5. Comment ajouter Chromedriver à PATH sous Linux ?

Comment ajouter un utilisateur à un groupe sous Linux

Comment ajouter un répertoire à PATH sous Linux [Astuce rapide]

Comment changer un shell d'utilisateurs sous Linux

Comment copier un répertoire sous Linux

Comment créer/ajouter des utilisateurs sous Linux

Linux :ajouter un répertoire à PATH