Où dois-je mettre mon script pour pouvoir l'exécuter par une commande directe?

50

Où puis-je (devrais) mettre mon script (bash) pour qu'il puisse être utilisé (pour toujours) par terminal ou par une commande directe: Alt + F2 ?

Je sais qu'il y a /usr/bin et /sbin & amp; /bin répertoires mais quand dois-je les utiliser entre eux?

Où devrais-je mettre mon script?

    
posée Pandya 13.05.2014 - 06:40
la source

3 réponses

49

N'utilisez pas ces répertoires:

  

/usr/bin , /sbin et /bin

Laissez-les pour les exécutables gérés par paquet.

Si vous avez besoin du script pour un utilisateur, la réponse de waltinator est correcte.

Si vous avez besoin du script pour tous les utilisateurs de votre système (mais vous pouvez également l’utiliser pour un seul utilisateur), collez-le dans /usr/local/bin/ . Un avantage: ce répertoire est déjà dans votre PATH, il n'est donc pas nécessaire de modifier les fichiers.

    
réponse donnée Rinzwind 13.05.2014 - 09:32
la source
71

Cela dépend de qui utilisera votre script:

  • Vous-même - $HOME/bin comme @waltinator a déclaré
  • Vous et d’autres utilisateurs locaux - /usr/local/bin
  • root seulement - /usr/local/sbin

Ainsi, vos propres scripts sont séparés des fichiers binaires fournis par la distribution.

    
réponse donnée Twinkles 13.05.2014 - 11:20
la source
37

Vous devriez mettre votre script sous $HOME/bin . Suivez ci-dessous PATH pour y parvenir:

  1. Créez un dossier en utilisant mkdir $HOME/bin
  2. Placez ensuite votre script dans $HOME/bin

  3. Enfin, ajoutez la ligne suivante sous $HOME/.bashrc en la modifiant avec gedit $HOME/.bashrc

export PATH="$HOME/bin:$PATH"

Lorsque le système recherche la commande que vous avez saisie, il recherche dans chaque répertoire $PATH et exécute la première correspondance trouvée.

    
réponse donnée waltinator 13.05.2014 - 06:50
la source

Lire d'autres questions sur les étiquettes