olá,
tenho um arquivo criado utilizando o nano (Ex: nano suporte.txt)
atribuo ao arquivo a permissão de execução (Ex: chmod +x suporte.txt)
Dúvida: por quê utilizar sh suporte não funciona?
para executá-lo foi possível somente com ./suporte.txt
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
olá,
tenho um arquivo criado utilizando o nano (Ex: nano suporte.txt)
atribuo ao arquivo a permissão de execução (Ex: chmod +x suporte.txt)
Dúvida: por quê utilizar sh suporte não funciona?
para executá-lo foi possível somente com ./suporte.txt
Olá Kayma. Tudo bem?
Se você está usando o binário sh, ele espera um argumento que indique qual script ele deve executar. Se você estiver no mesmo diretório do script, você pode executar sh meu-script, mesmo sem o "./". Se o script estiver em um diretório diferente do qual você está no momento que executa o sh, você deve passar o caminho para ele.
Acontece que o nome do script é o nome completo do arquivo. Se seu arquivo está nomeado suporte.txt, então não tem como o shsaber que você está se referindo a ele passando somente suporte. Você tentou executar sh suporte. Ao invés disso, tente executar sh suporte.txt
Além disso, é uma boa prática que, se for usar uma extensão no arquivo de script, que use a ".sh". Ajuda a identificar o que é um arquivo de texto comum e o que é um script. Outra coisa é que a extensão do arquivo não precisa ser colocada no momento de criação. Então se você quiser executar o script somente usando seu nome, basta salvar ele sem nenhuma extensão.
Também é possível executar o script mesmo sem passar o shou bash, se você colocar
#!/bin/sh
ou
#!/bin/bashcomo primeira linha do script. Isso avisa ao shel qual interpretador ele deve usar para executar aquele script.
Espero ter ajudado.