Comment ajouter un répertoire au chemin dans Linux

Comment ajouter un répertoire au chemin dans Linux
Le chemin est une variable prédéfinie dans un shell Linux. Il se compose de répertoires avec leurs chemins de répertoire, à partir de la racine. Path est une liste séparée par le côlon. Chaque répertoire avec son chemin est séparé du répertoire précédent avec son chemin par un côlon. Le shell recherche des commandes dans ces répertoires.

Les commandes ne sont pas seulement les commandes du système d'exploitation disque. Le chemin est une liste des répertoires dans lesquels le shell recherche des commandes du système d'exploitation et d'autres commandes. Les commandes sont comme de courts fichiers de programme. Ainsi, les commandes sont des exécutables. Chaque application installée dans l'ordinateur est livrée avec un fichier exécutable. Afin d'exécuter l'application, le fichier exécutable est engagé en premier. Ces fichiers exécutables sont également appelés commandes.

Sans la variable de chemin, chaque commande serait commandée avec le chemin absolu, comme dans,

/ home / John / dir1 / dir2 / commande.exe

où le premier / est le répertoire racine; John est le répertoire utilisateur de l'utilisateur, John; Dir1 et Dir2 sont des sous-répertoires; et commander.EXE est le nom du fichier exécutable.

De nombreux autres noms sont possibles pour le fichier exécutable. En fait, commande.Exe est symbolique, ici. Donc, si le répertoire, / home / John / dir1 / dir2 (sans le fichier), est dans la variable de chemin, l'utilisateur John, exécutera la commande.exe à l'invite, John @ hôte: ~ $ en tapant simplement, commande.exe, sans le chemin précédent. C'est-à-dire:

John @ hôte: ~ $ commande.exe

puis appuyer sur Entrée.

Afin de voir la liste actuelle des répertoires Path dans l'ordinateur, Type:

$ echo $ chemin

et appuyez sur Entrée, au terminal. Le résultat serait quelque chose comme,

/ usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / jeux: / usr / local / jeux: / snap / bin

La question est maintenant: comment est un répertoire (et son chemin précédent), ajouté à la variable de chemin? Avec certaines installations, le répertoire est ajouté automatiquement. Avec d'autres, il doit être ajouté manuellement. Cet article explique les deux principales façons, dans lesquelles le répertoire est ajouté. Le répertoire n'est pas ajouté (inclus) car il serait fait à un tableau. Les deux principales façons sont appelées addition temporaires et addition permanente. Bash est le shell utilisé pour les exemples de code dans cet article.

Contenu de l'article

  • Introduction - Voir ci-dessus
  • Ajout temporaire
  • Ajout permanent
  • Conclusion

Ajout temporaire

L'ajout temporaire signifie que l'ajout n'a lieu qu'en mémoire. Il n'est pas enregistré pour une utilisation lorsque l'ordinateur est redémarré.

La commande d'exportation intégrée de Bourne Shell

En termes simples, la commande d'exportation est:

$ export [name [= valeur]]

Dans ce cas, il réaffecte une valeur à une variable en mémoire.

La variable de chemin en mémoire peut déjà avoir une valeur comme,

Path = / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / jeux: / usr / local / jeux: / snap / bin

Supposons que le répertoire à ajouter est / home / John / dir1 / dir2. Si la commande d'exportation est tapée comme,

$ Export Path = / Home / John / Dir1 / Dir2

alors / home / John / dir1 / dir2 remplacerait tout ce qui est déjà en mémoire comme valeur pour la variable de chemin.

Si la commande d'exportation est tapée comme,

$ Export Path = $ path: / home / John / dir1 / dir2

Ensuite, / home / John / dir1 / dir2 se fixerait à la fin de ce qui est déjà dans la variable. Ainsi, la nouvelle variable serait:

Path = / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / jeux: / usr / local / jeux: / snap / bin: / Accueil / John / dir1 / dir2

Notez que dans la ligne de code précédente ci-dessus, la partie de la valeur qui est déjà là est séparée de la nouvelle partie avec un côlon, qui est ':'. $ Chemin dans la ligne de code, se développe (est remplacé) par la valeur du chemin déjà en mémoire.

Maintenant, la même commande peut être dans plus d'un répertoire. Lorsqu'une commande exécutable est tapée sans le chemin précédent à l'invite, le shell commence à rechercher la valeur (chaîne) de la variable de chemin en mémoire, de gauche à droite. Ainsi, avec la ligne de code ci-dessus, / home / John / dir1 / dir2 arriverait enfin, dans la recherche. Qui veut que son annuaire arrive en dernier? - Personne. Ainsi, une meilleure façon d'inclure (ajouter) le répertoire est la suivante:

$ Export Path = / Home / John / Dir1 / Dir2: $ Path

/ Home / John / dir1 / dir2 est maintenant au début, séparé du répertoire suivant, avec un côlon. Donc, avec une invite de "John @ Host: ~ $",

John @ hôte: ~ $ export path = / home / John / dir1 / dir2: $ path

Après avoir tapé et appuyé sur Entrée, la commande, commande.EXE dans le répertoire, Dir2, serait exécuté avec:

John @ hôte: ~ $ commande.exe

Tant que l'ordinateur n'est pas arrêté, l'utilisateur continuera à exécuter la commande.exe sans taper le chemin précédent.

Lorsque l'ordinateur est fermé, tout dans la mémoire d'accès aléatoire est effacé. La mauvaise nouvelle est que l'utilisateur de l'ordinateur devra répéter ce processus d'ajout de son répertoire à la variable de chemin à chaque fois que l'ordinateur est redémarré. Personne ne veut faire ça aujourd'hui. Ainsi, l'approche d'addition permanente est l'approche recommandée. Autrement dit, l'ajout à Path, doit être sauvé (dans le disque dur).

Ajout permanent

D'après la discussion ci-dessus, l'idée est de sauver la modification apportée (dans le disque dur). Donc, si la modification est enregistrée dans un fichier que Shell lit chaque fois que l'ordinateur bottait, ce serait bien. C'est-à-dire que chaque fois que l'ordinateur bottait, la variable de chemin en mémoire sera mise à jour de manière appropriée. Lorsqu'un ordinateur démarre, au démarrage, il lit certains fichiers. L'un des fichiers que le shell bash pour Linux lit est, ~ /.bashrc . Le nom du fichier est .bashrc , en commençant par le point. C'est dans le répertoire de l'utilisateur.

Bash n'est qu'une coque, probablement la coque la plus populaire pour Linux, aujourd'hui. Une autre coque pour Linux est zsh. Avec Zsh, le fichier correspondant est ~ /.zshrc, Toujours dans le répertoire de l'utilisateur. Lorsque le shell démarre, au démarrage, il lit ce fichier. Pour bash, le fichier est, ~ /.bashrc . Donc, si le code d'addition ci-dessus est tapé dans le ~ /.fichier bashrc, le répertoire sera toujours en mémoire, comme ~ /.Bashrc l'inclura toujours sur le chemin, chaque fois que l'ordinateur botte. Il reste en mémoire, jusqu'à ce que l'ordinateur soit arrêté.

En bash, ~ /.Bashrc est un fichier caché, donc l'utilisation ordinaire de la commande, LS ne l'affichera pas. ~ /.Bashrc contient des commandes bash (shell). Ubuntu est une variante de Linux. Ubuntu est livré avec un éditeur de texte. Dans l'ordinateur de l'auteur, l'arrière-plan de l'éditeur de texte Ubuntu est noir.

La commande d'addition ci-dessus (sans l'invite) doit être incluse dans le ~ /.fichier bashrc. Il est bon de l'ajouter à la fin du fichier afin de ne pas tempérer avec son contenu disponible, qui fonctionne probablement bien.

Pour ouvrir ~ /.Bashrc dans Ubuntu, tapez ce qui suit à l'invite de commande au terminal, et appuyez sur Entrée:

$ nano ~ /.bashrc

Où nano est l'éditeur de texte. Ici, Nano est une commande (exécutable), dont l'argument est, ~ /.bashrc . Le contenu du fichier doit s'ouvrir dans l'éditeur de texte pour superposer la fenêtre Terminal.

Le ~ /.Le fichier bashrc s'ouvrira dans l'éditeur de texte, probablement avec un fond noir. Le curseur clignote dans le coin supérieur gauche.

Appuyez en continu sur la touche du clavier vers le bas du clavier jusqu'à ce que le curseur atteigne la fin du fichier. Ajouter une nouvelle ligne de,

$ Export Path = / Home / John / Dir1 / Dir2: $ Path

Ce n'est pas tout. Le changement au ~ /.Le fichier bashrc n'a pas été enregistré. Pour enregistrer le fichier avec la modification appuyée, appuyez sur Ctrl + O et suivez toutes les autres instructions qui apparaissent. Pour quitter l'éditeur de texte, appuyez sur Ctrl + X, et la fenêtre de terminal normal doit remplacer la fenêtre de l'éditeur de texte. D'autres commandes de shell peuvent alors être émises.

Si «Echo $ Path» est émis, le nouveau répertoire ne sera pas vu dans l'affichage. Il existe deux façons de continuer à partir d'ici: redémarrez l'ordinateur, soit obtenir le nouveau contenu du ~ /.Fichier Bashrc en mémoire avec la commande source. Il est simple d'utiliser la commande source, comme suit:

$ source ~ /.bashrc

Si la commande source est émise sans redémarrer, alors «Echo $ path» affichera le nouveau répertoire ajouté dans le résultat (affichage). La commande d'intérêt peut ensuite être tapée sans le chemin précédent.

Note: Ne confondez pas entre la fin de la valeur du chemin (liste) et la fin du ~ /.fichier bashrc. De plus, ne confondez pas entre un répertoire dans le chemin d'accès en mémoire et un fichier exécutable dans le répertoire du disque dur.

Conclusion

Le chemin est une variable intégrée dans les coques Linux. La valeur du chemin est une liste de répertoires séparés par des colons. Il y a une commande (fichier exécutable) dans le disque dur pour chacun de ces répertoires. Si une commande est émise à la vente sans la précéder d'un chemin, le shell examinera ces répertoires pour la commande. S'il ne voit la commande dans aucun des répertoires, la commande ne sera pas exécutée. Dans ce cas, pour exécuter la commande, la commande doit être précédée de son chemin. La commande peut être dans plusieurs répertoires dans la valeur du chemin. Dès que le shell voit le premier répertoire ayant la commande, il exécute la commande. La valeur du chemin est en fait une chaîne composée de répertoires séparés par des colons.

Le problème est de savoir comment ajouter le répertoire de l'exécutable d'une nouvelle application dans le chemin. Dans certains cas, cela se fait automatiquement par le programme d'installation de la nouvelle application. Dans d'autres cas, cela doit être fait manuellement. Il existe deux façons de le faire manuellement, appelée: addition temporaire et addition permanente. L'addition temporaire utilise la commande Export et ajoute simplement le répertoire pendant que l'ordinateur est allumé. L'addition permanente doit enregistrer la ligne de commande d'exportation dans le ~ /.Fichier d'initialisation Bashrc (bash) pour les opérations futures.