Eu escrevi um script abc.sh
e salvei-o em um lugar chamado generallstuff
. Eu navego para esta pasta com:
cd ~ /generallstuff
quando tento executar o script com:
chmod 755 abc.sh
eu recebo o erro"no such file or directory"
Mas o roteiro está neste lugar, por que isso? Anteriormente eu não tinha problemas ao executar scripts
Responder1
cd ~ /generallstuff
deveria ser cd ~/generallstuff
, caso contrário você mudará para seu diretório inicial.
Responder2
Onde Quandoexatamente a mensagem de erro aparece?
Algumas coisas para verificar:
(1) O chmod
comando cria o scriptapenasexecutável, ele faznãoexecutá-lo. chmod +x abc.sh
tornará seu script executável.
Aparte: Eu prefiro a versão "legível por humanos" do
chmod
comando àquela que usa notação octal. Então, por exemplo:
chmod u+x file
significa alterar o arquivo do usuário para executável (ou apenas+x
, ou
ser está implícito por padrão).Você pode especificar
g
roup,o
thers no lugar deu
ou combinações. No lugar dex
você pode usarw
,r
etc, novamente em combinações, se desejarUse
+
para adicionar,-
para retirar atributos.Veja opágina de manual do chmodPara maiores informações.
(2) Você tem o encantamento de shell apropriado na parte superior do seu arquivo de shell? por exemplo,
#!/bin/bash
(ou qualquer shell que você quiser)
(3) Como você está administrando isso? Desta forma deve funcionar:
./abc.sh
(4)Observação: Seu cd
comando tem umespaço (' '
) entre o ~
e /generallstuff
.. espero que seja apenas um erro de digitação na postagem; caso contrário, o comando iráfalhare você não mudará de diretório!