web-dev-qa-db-fra.com

Comment modifier mon fichier PROFIL utilisateur pour ajouter un dossier de scripts que j'ai créé à la fin de ma variable PATH?

Comment modifier mon fichier PROFIL utilisateur pour ajouter un dossier de scripts que j'ai créé à la fin de ma variable PATH?
Je ne suis pas totalement sûr de ce que cela signifie. Quelqu'un peut-il expliquer.
Merci :)

9
user1221987

Dans les systèmes unix/linux, vous avez un ID utilisateur ('john') et un répertoire personnel ('/ home/john'). Le répertoire personnel a une abréviation, le tilde: ~ (au début d'un chemin de répertoire) signifie la même chose que votre répertoire personnel ("/ home/john").

Dans le répertoire personnel se trouvent plusieurs fichiers qui commencent par un point (également appelés fichiers à points car ils commencent par un point, c'est-à-dire un point). Lorsque vous vous connectez, le shell (c'est-à-dire le programme qui traite la ligne de commande lorsque vous tapez des commandes) qui est démarré pour vous fournir une ligne de commande recherche ces fichiers et les lit, en utilisant leur contenu pour initialiser votre environnement Shell. Vous pouvez voir ces fichiers (s'ils existent) en entrant ces commandes sur la ligne de commande:

cd
ls -a

Le cd sans args signifie 'changer le répertoire courant pour être mon répertoire HOME. La commande ls liste les fichiers dans un répertoire (entre autres); les -a l'option indique "afficher les fichiers cachés". Les fichiers cachés sont ceux qui commencent par un point - c'est la convention utilisée sous unix/linux pour "cacher" les fichiers.

Le fichier .profile (dit à haute voix qu'il est souvent prononcé "profil de points") est l'un de ces fichiers de points utilisé pour initialiser votre environnement.

La variable d'environnement PATH est utilisée par le shell pour rechercher des fichiers exécutables (programmes).

Vous pouvez google pour "comment mettre à jour PATH dans le profil" et similaire pour en savoir plus sur le sujet.

Voici un extrait typique trouvé dans un fichier .profile; son but est de vous permettre d'exécuter des programmes stockés dans le répertoire/usr/mypackage/bin.

PATH="/usr/mypackage/bin:$PATH"
export PATH

Mettre un répertoire sur le PATH vous permet de taper juste un nom de programme ('monprogramme') à la place du plus long formulaire ('/ usr/mypackage/bin/myprogram').

Vous pouvez voir l'effet de cet extrait en utilisant echo $PATH; il montrera la valeur entière de la variable PATH. La valeur doit être une liste de chemins (répertoires) séparés par deux points. Un exemple simple:

echo $PATH
/usr/mypackage/bin:/usr/bin:/bin

Cela devrait vous permettre de commencer à enquêter sur les détails. Essayer de rechercher des sujets comme "comment configurer ma connexion linux/unix", "qu'est-ce que le fichier .profile", etc., pour en savoir plus.

Il est conseillé d'utiliser des guillemets doubles lors de la définition de la valeur de PATH pour encapsuler tous les caractères "habituels" qui peuvent figurer dans les noms des éléments du chemin. Les guillemets simples ne conviennent pas à cela car ils empêcheront l'évaluation de $ PATH (qui fournit votre chemin existant lors de la définition de votre nouvelle valeur de chemin). Pour en savoir plus sur les citations, voici une discussion sur les guillemets simples vs doubles

28
Art Swri

Les programmes intégrés comme cat et cd fonctionnent simplement en entrant la commande. Cependant, ils se trouvent dans un certain dossier, tel que /usr/bin/. Essayez par vous-même et voyez dans quel dossier cat se trouve, en entrant which cat.

Lorsque vous tapez une telle commande, votre shell a besoin d'une liste de dossiers dans lesquels il doit rechercher la commande que vous venez de saisir. Il a utilisé le $PATH variable pour cela, qui stocke cette liste. Vous pouvez le voir en entrant echo $PATH.

Maintenant, si vous fermez votre Shell, le $PATH la variable a disparu. Lorsque vous rouvrez votre Shell, il démarre une certaine quantité de scripts, l'un d'eux étant le .profile script. Dans ce script, le $PATH la variable est chargée. Par conséquent, vous pouvez ajuster le .profile fichier afin de sauvegarder votre $PATH en permanence. Pour ce faire, modifiez simplement ce fichier et modifiez la ligne où $PATH est défini (par exemple pico ~/.profile).

Dans votre cas particulier, l'ajout de votre dossier de scripts au $PATH comme ceci, vous pourrez simplement écrire le nom de votre script au lieu du pad entier lorsque vous voulez en lancer un.

2
gleerman

La variable PATH stocke la liste des répertoires que le Shell recherche pour les programmes/commandes lorsque vous essayez de les exécuter. Vous pouvez accéder à sa valeur depuis la ligne de commande en tapant:

echo $PATH

Soyez prudent lorsque vous le modifiez, sinon vous pourriez interférer avec votre capacité à exécuter des programmes à partir de la ligne de commande. Pour ajouter un nouveau répertoire sans modifier la valeur d'origine, vous pouvez mettre une ligne dans votre fichier telle que:

PATH=$PATH:/directory_to_add

où 'directory_to_add' est le répertoire que vous souhaitez ajouter au chemin ($ PATH indique au Shell d'insérer la valeur de PATH). Ensuite, si vous tapez le nom de l'un des scripts dans le dossier sur la ligne de commande, il s'exécutera sans avoir à taper le chemin d'accès complet (tant qu'il dispose de l'autorisation d'exécution).

Remarque - votre fichier de profil se trouve dans ~/.profile, et vous pouvez ajouter la ligne ci-dessus avec un éditeur de texte et réenregistrer le fichier. Ensuite, à partir de votre répertoire personnel, tapez sh ./.profile, et votre chemin devrait maintenant inclure le répertoire souhaité.

1
blake