가끔 쉘 스크립트를 실행하다 보면
"bad interpreter No such file or directory" 오류를 보게된다.
보통 이런 에러는 윈도우에서 FTP로 쉘스크립트를 전송할 경우 발생한다.
New line character의 차이 때문에 vi에서 살펴보면 라인에 끝에 ^M이 있을것이다.
그런데 바로 vi로 문서를 열면 보이지 않을 것이다.
vi -b 로 열어서 확인해 본다.
결론은 이것을 제거만 해주면 쉘은 실행된다.
:1,$ s/^M//g
위 vi 명령은 1행부터 마지막까지 "^M"를 찾아서 ""로 치환한다.
=========================================================
참고: ^M = Ctrl + v + M
^[ = Ctrl + v + [
=========================================================
<바게> 또한, 윈도우의 에디트 플러스와 같은 경우 문서->파일 형식을 Unix로 설정하고 전송하면 문제가 발생하지 않는다.
"bad interpreter No such file or directory" 오류를 보게된다.
보통 이런 에러는 윈도우에서 FTP로 쉘스크립트를 전송할 경우 발생한다.
New line character의 차이 때문에 vi에서 살펴보면 라인에 끝에 ^M이 있을것이다.
그런데 바로 vi로 문서를 열면 보이지 않을 것이다.
vi -b 로 열어서 확인해 본다.
결론은 이것을 제거만 해주면 쉘은 실행된다.
:1,$ s/^M//g
위 vi 명령은 1행부터 마지막까지 "^M"를 찾아서 ""로 치환한다.
=========================================================
참고: ^M = Ctrl + v + M
^[ = Ctrl + v + [
=========================================================
<바게> 또한, 윈도우의 에디트 플러스와 같은 경우 문서->파일 형식을 Unix로 설정하고 전송하면 문제가 발생하지 않는다.