다시 읽기를 통해 사용자 입력 읽기

다시 읽기를 통해 사용자 입력 읽기

간단한 bash 명령을 사용할 때

#!/bin/bash
echo Please, enter your name
read NAME
echo "Hi $NAME!"

그리고 그것을 source filename.sh사용하여 실행:Undefined variable

무엇이 문제일까요? 검색했지만 해결책이 없습니다.

답변1

향후 참조를 위한 요약:

shebang은 을 가리 /bin/bash키지만 source명령으로 인해 코드가 현재 셸에서 실행되고 결과는 입니다 csh.

코드는 내 Debian 에서는 작동 bash하지만 .cshsource filename.shbash

예상대로 실행 하려면 bash실행 가능하게 만들고( chmod a+x filename.sh) 에서 호출 해야 합니다 ./filename.sh.

마지막으로, #!/bin/bash이 특별한 경우에는 shebang이 잘못된 길로 들어갔습니다.

관련 정보