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.