Onde devo colocar meu script para que eu possa executá-lo por um comando direto?

47

Onde posso (devo) colocar meu script (bash) para que ele possa ser usado (para sempre) por terminal ou por um comando direto: Alt + F2 ?

Eu sei que há /usr/bin e /sbin & amp; /bin diretórios, mas quando devo usar entre eles?

Onde devo colocar meu roteiro?

    
por Pandya 13.05.2014 / 06:40

3 respostas

44

Não use esses diretórios:

  

/usr/bin , /sbin e /bin

Deixá-los para executáveis gerenciados por pacote.

Se você precisar do script para um usuário, a resposta do waltinator está correta.

Se você precisar do script para todos os usuários do seu sistema (mas também pode usá-lo para um usuário), coloque-o em /usr/local/bin/ . Uma vantagem: este diretório já está no seu PATH, portanto não há necessidade de editar arquivos.

    
por Rinzwind 13.05.2014 / 09:32
69

Depende de quem usará seu script:

  • Só você mesmo - $HOME/bin como @waltinator disse
  • Você e outros usuários locais - /usr/local/bin
  • root apenas - /usr/local/sbin

Dessa forma, você tem seus próprios scripts separados dos binários fornecidos pela distribuição.

    
por Twinkles 13.05.2014 / 11:20
37

Você deve colocar seu script em $HOME/bin . Siga abaixo PATH para conseguir isso:

  1. Crie uma pasta usando mkdir $HOME/bin
  2. Em seguida, coloque seu script em $HOME/bin

  3. Por fim, adicione a seguinte linha em $HOME/.bashrc editando com gedit $HOME/.bashrc

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

Quando o sistema estiver procurando pelo comando que você digitou, ele procurará em cada diretório de $PATH e executará a primeira correspondência que encontrar.

    
por waltinator 13.05.2014 / 06:50