Je suis sous Mac OS 10.6 et j'essaie d'apprendre quelque chose sur les scripts Shell. Je comprends comment enregistrer un script Shell et le rendre exécutable, mais je me demande ce que je peux faire ou où je peux enregistrer le fichier pour le rendre global (c’est-à-dire accessible quel que soit le dossier dans lequel je me trouve).
Par exemple, si j'enregistre un fichier .sh dans le répertoire/Users/username/et le rend exécutable, je ne peux exécuter ce script que dans ce répertoire spécifique. Si je navigue vers/Utilisateurs/nom d'utilisateur/Téléchargements, par exemple, je ne peux pas exécuter le script.
En outre, toute suggestion de ressources pour en savoir plus sur les scripts Shell serait utile. Merci
/usr/local/bin
serait l'emplacement le plus approprié. Mac OS X l'a dans la PATH
par défaut
Traditionnellement, ces scripts sont soit en ~/bin
(c'est-à-dire: le répertoire bin de votre répertoire personnel), soit en /usr/local/bin/
. Le premier signifie que le script ne fonctionnera que pour vous, le second est destiné aux scripts que vous voulez que n'importe qui sur le système puisse exécuter.
Si vous le mettez dans ~/bin
, vous devrez peut-être l'ajouter à votre variable d'environnement PATH. /usr/local/bin
devrait déjà être sur le chemin.
Il y a deux façons de le faire -
Sous bash Shell, écrivez ce script en tant que fonction, puis placez-le dans le fichier .bashrc ou dans le fichier source contenant cette fonction sous "source nom_fichier"
Maintenant, exécutez le script par appel de fonction dans le shell.
Dans le système d'exploitation mac
Celui-ci est super facile si vous connaissez votre fichier bashrc! Cela utilisera entièrement uniquement votre fichier .bashrc et prend 2 secondes à accomplir.
(J'utilise Arch Linux Manjaro, j'utilise donc .bashrc situé dans mon répertoire personnel)
Le code à placer dans votre fichier .bashrc:
# Simple bashrc method to launch anything in terminal from any directory
YOURCOMMAND () {
cd /path/to/directory/containing/your/script/ && ./YOURSCRIPT
}
Comme vous pouvez le constater, vous utilisez d’abord la simple commande 'cd' et lui donnez le répertoire de l’emplacement des scripts, puis vous utilisez '&&' pour pouvoir exécuter la commande suivante juste après et enfin ouvrir votre script normalement! Super facile et enregistré directement dans votre fichier .bash! :)
J'espère que j'ai aidé quelqu'un!
Cordialement,
AnonymousX
Soit en l’enregistrant dans /usr/bin
(ou tout autre répertoire présent dans PATH
) ou en éditant PATH
pour inclure le répertoire dans lequel vous l’avez sauvegardé, il sera exécuté dans n’importe quel répertoire.
depuis le répertoire de travail de 'script.sh' "mv [script.sh]/usr/local/bin" (non testé mais semble être le moyen le moins complexe utilisé par l'OMI.)