Je suis sur le point d'installer "leiningen" qui est un script bash pour le langage de programmation clojure avec beaucoup d'utilité ... ... mais je ne sais pas où il convient de -passer- un script exécutable sous linux système afin qu'il soit disponible en permanence et de manière stable.
Je ne pense pas que n'importe où dans/home ait un sens, mais je ne sais pas quel répertoire/répertoires sont censés être utilisés pour cela.
/ usr/share?
(Remarque: ~
se traduit par /home/user
dans cet article)
Personnellement, j'ai mis tous mes scripts système sur mesure dans /usr/local/bin
et tous mes scripts bash personnels dans ~/bin
. Très peu de programmes que j'installe se placent dans /usr/local/bin
répertoire donc ce n'est pas très encombré et il était déjà dans le $PATH
variable sur la plupart de mes machines.
Ajouter /usr/local/bin
à votre chemin système (s'il n'est pas déjà là) ajoutez ceci à /etc/profile
:
PATH=$PATH:/usr/local/bin
export PATH
Ajouter ~/bin
au chemin de votre utilisateur ajoutez ceci à ~/.bash_profile
:
PATH=$PATH:$HOME/bin
export PATH
Parfois, la valeur par défaut .bash_profile
le fichier aura une instruction if qui ajoute automatiquement ~/bin
à $PATH
s'il existe, alors créez le ~/bin
et ouvrez un nouveau terminal pour voir si le vôtre le fait déjà.
/ usr/local/est vraiment le bon endroit, tandis que/opt est vraiment pour les applications tierces; "/ opt est réservé à l'installation de progiciels d'application complémentaires." Cela fait partie de la norme de hiérarchie du système de fichiers.
Voir http://www.pathname.com/fhs/pub/fhs-2.3.html pour une discussion sur/opt.
Pour/usr/local /, c'est pour "l'utilisation par l'administrateur système". N'oubliez pas ce qu'il y a dedans - documentez-le.
Historiquement, vous utilisiez quelque chose comme/opt. Tout va bien tant qu'il est mis à jour dans $ PATH pour les utilisateurs qui sont censés l'avoir (donc tout ce qui se trouve dans/home est une mauvaise idée).
/usr/share/clojure
semble être un endroit commun pour mettre les binaires et les bibliothèques de clojure - pourquoi je ne sais pas, cela semble naturel pour /usr/local/share/clojure
— donc la création d'un sous-répertoire site
sous ce pour ces scripts bash semble correcte.
Le point général est qu'il est plus logique d'organiser les scripts par fonction, de ne pas avoir tous les scripts bash au même endroit.
/usr/local
, Je crois qu'il y a une certaine confusion dans le sens de "local".
Si je comprends bien, "local" ne signifie pas "originaire de/sur la machine locale" mais, plus simplement, "spécifique à la machine locale", qui peut ou non provenir de/de la machine locale.