Quando você digita sh somescript.sh
, o sistema procura sh
no caminho e não somescript.sh
.
Então o sistema encontra sh
e passa o argumento somescript.sh
para ele. Então sh
procura por somescript.sh
na pasta atual ou na pasta especificada ~/bin/
se você digitou
sh ~/bin/somescirpt.sh.
Para fazer o sistema procurar por somescript.sh
no caminho, use-o diretamente como um comando, sem o prefixo sh. Em outras palavras, digite no terminal:
somescript.sh
Para que isso funcione, somescript.sh
precisa estar localizado em uma pasta no caminho, neste caso ~/bin/
e ele precisa ser executável, como outros apontaram. Eu incluo o comando abaixo para completar.
chmod +x ~/bin/somescript.sh
Veja também Como faço para executar arquivos .sh? e
Como executar scripts sem digitando o caminho completo?
Espero que isso ajude