컴퓨터/Linux

[Linux] 스크립트 실행 시, 'No such file or directory' 오류

dolhim 2017. 2. 9. 12:31

상황 : 

스크립트를 Window에서 작성 후  (문법적으로 오류가 없다고 가정)

Linux에서 실행 시 에러 발생



오류 내용 :

-bash: ./your_script: /bin/sh^M: bad interpreter: No such file or directory



원인 : 

Windows 시스템에서 텍스트 편집기를 통해 파일을 만들 때, 

줄 바꿈에 캐리지 리턴 + 줄 바꿈 문자를 사용하지만

Linix 시스템에서는 줄 바꿈 문자만 사용하므로 문제가 발생할 수 있다.



해결 :

리눅스에서 명령어를 실행하여 스크립트 파일 내에 캐리지 문자를 제거한다.


1
sed --'s/\r//g' /etc/init.d/your_script
cs


혹은, 윈도우에서 편집기의 기능 중 Linux, Unix 용으로 저장하기 기능을 사용한다.

NotePad++의 경우, '편집 > 줄 끝 문자 변환 > UNIX 형식으로 변환'에 있다.



참고 : https://confluence.atlassian.com/kb/starting-service-on-linux-throws-a-no-such-file-or-directory-error-794203722.html