Bash scripts não estão funcionando, mas no mac terminal esses comandos em scripts funciona

0
Eu estou preso com um problema com fio.Meus scripts bash não estão funcionando agora.Ele trabalhou anteriormente.Eu não sei porquê.Interessantemente, os comandos do script funcionam quando eu entrar diretamente no terminal.

Esta é uma linha de amostra do meu script ls

No terminal quando executo sh ./check.sh , a saída é : command not found ls

A saída é semelhante para outros comandos também, exceto echo para o qual está mostrando a saída correta.

Eu peço a todas as pessoas que me ajudem.

    
por lalthomas 18.09.2014 / 08:45

1 resposta

1

Você criou o script com um editor do DOS (windows), que adicionou um \ r (retorno de carro) ao final de cada linha.

Você pode converter o arquivo com:

dos2unix check.sh check.sh.tmp && mv check.sh.tmp check.sh

Pessoalmente, geralmente faço vim check.sh e, em seguida, :set notx e, em seguida, salve o arquivo: :wq

    
por 18.09.2014 / 09:46