Por que meu script bash não funciona? ("comando não encontrado")

0

Eu escrevi um script muito simples que se parece com isso:

$ cat pack.sh
#!/bin/bash
cd log
rm development.log
cd ..
tar zcvf my_tar_ball.tar.gz *

Mas não funciona:

$ pack.sh
pack.sh: command not found

which bash devolve /bin/bashe pack.sh é executável:

$ ls -ll pack.sh 
-rwxrwxr-x 1 misha misha 75 2012-02-04 22:11 pack.sh

Qual poderia ser o problema?

(BTW, source pack.sh funciona!)

Misha Moroshko
fonte

Respostas:

4

Se você não colocou o diretório de scripts em seu PATH (que é uma variável de ambiente) e. (o diretório atual) não está no PATH você pode ativar o script assim:

$ ./pack.sh
kev
fonte
Ignore minha resposta, @kev atualizou sua resposta Para adicionar à resposta de kev, o motivo pelo qual ela não funciona sem ./ se a frente dela é porque o diretório atual não está em $ PATH.
lupincho