Vous devez copier ou lier le script dans un répertoire qui se trouve sur le $PATH. Généralement /usr/bin et /usr/local/bin/ sont sur le chemin, ce sont donc de bons emplacements pour lier ou copier le script.
ln -s /path/to/your/script /usr/local/bin
Si vous n'êtes pas root, vous devrez soit sudo cette commande ou exécutez-la en tant qu'utilisateur root.
Une option consiste simplement à saisir le chemin d'accès au script :
~/Desktop/script
Cela fonctionne bien, mais devient un peu lourd.
C'est ce que le PATH la variable d'environnement est pour. Et c'est ce que $HOME/bin est pour.
- Créez-vous un répertoire
$HOME/bin. Mettez-y tous vos scripts exécutables (rendez-les exécutables avecchmod +x scriptsi besoin est). De cette façon, il n'y a qu'un seul endroit pour rechercher les scripts que vous souhaitez exécuter. - Ajouter
$HOME/binà votrePATH. J'ai mis le mien devant :PATH="$HOME/bin:$PATH, mais vous pouvez le mettre à l'arrière si vous préférez. - Mettez à jour votre
.profileou.bash_profile(ou éventuellement.bashrc) fichier pour définirPATH. Méfiez-vous cependant d'un PATH qui ne cesse de croître.
Comme tripleee l'a noté, une fois la commande installée dans un répertoire sur PATH , vous ne tapez plus ./script , mais juste script . C'est exactement comme si vous tapiez ls et non /bin/ls , etc. Une fois le programme installé dans un répertoire de votre PATH , il est (à de nombreuses fins) impossible à distinguer d'une commande fournie par le système.
J'ai environ 500 scripts et programmes dans mon $HOME/bin répertoire.
Notez que cela ne nécessite aucun privilège particulier. Si vous avez un accès administrateur à votre machine et que vous pensez que d'autres utilisateurs pourraient trouver vos commandes utiles, vous pouvez installer les scripts/programmes dans l'un des répertoires fournis par le système sur votre PATH . Cependant, il est généralement préférable de ne pas ajouter de programmes à l'un des éléments suivants :
/bin/usr/bin/sbin/usr/sbin
Il y a souvent/habituellement /usr/local/bin qui est un endroit approprié pour les commandes largement utilisées non fournies par le système.
Il serait préférable d'utiliser chmod a+x,go-w script; vos scripts ne doivent pas être accessibles en écriture par d'autres personnes. Vous pouvez même simplement utiliser chmod 555 script ou chmod 755 script . J'ai tendance à garder mes scripts non inscriptibles. De cette façon, je dois passer par un processus de changement formel avec le système de contrôle de version. Cela signifie qu'il y a moins de risques de changements incontrôlés.