“cd” no script shell do linux retorna “comando não encontrado!”

2

Eu escrevi um script de shell chamado "a.sh" no linux com uma linha:

cd ..

: e então eu corro isso com:

chmod +x a.sh
sh ./a.sh

: como faço isso sem precisar:

"Comando não encontrado" ou "Não é possível". Talvez eu tenha olhado esse código por muito tempo ou estou fazendo algo obviamente errado?

Nota: Eu descobri o que estava errado. O Emacs estava inserindo algum caractere "^ m" estranho no final de cada linha

    
por Zubair 29.11.2010 / 19:16

2 respostas

6

cd é um embutido no seu shell. Qualquer coisa como / usr / bin / cd ou / bin / cd, apenas por estranhas razões mágicas.

Primeiro, execute isso.

which sh

Isto irá mostrar o caminho para o seu sh executable

Tente adicionar um shebang ao seu script. Então, o arquivo inteiro se parece com isso

#!/bin/sh
cd ..

Se isso não funcionar, então esclareça os passos que você deu, como Stefan pediu. Além de colar a mensagem de erro exata.

    
por 29.11.2010 / 19:36
-1

e se você colocar / bin / cd em seu lugar.

    
por 29.11.2010 / 19:19

Tags