Já experimentou sh ./shell.sh
em vez de sh shell.sh
?
(por motivos de segurança, o diretório atual .
NUNCA está na variável PATH)
Além disso, a primeira linha do script #!/bin/bash
só é necessária se o script for executado sozinho,
como ./shell.sh
(não se esqueça de fazer chmod a+x shell.sh
nesse caso)
Finalmente, o comando sh
chama o shell de traço, não o shell de bash, portanto, seria melhor invocar scripts bash como bash ./shell.sh
em vez de sh ./shell.sh
Cuidado com os finais de linha:
O Bash não aceita \ r \ n (CRLF) como terminações de linha (que é o estilo do windows).
Apenas \ n (LF) é permitido.