/bin/bash^M: bad interpreter: 그런파일이나 디렉토리가 없습니다.

2024. 11. 10. 11:23Unix & Linux

반응형

# 코드상에 전혀 문제가 있지 않은데, 실행되지 않는 문제가 발생되는 경우가 있습니다. 많은 원인이 있겠지만 그 중 한가지, 이 부분도 체크해보는게 어떨까요?

 - vi 에디터에 ^M 같은 문제가 포함되어 있는지도 한번 확인 해 보기.

 

1. 소스 확인

$ vi test.sh

단순하게 vi로 들어가면 어떤 문제인지 보이지가 않습니다.

 

$ vi -b test.sh

vi -b

- "^M" 이게 행마다 생긴것을 볼수 있습니다. 이런 원인으로 실행되지 않았을 수도 있습니다.

- 해당 부분을 삭제해 주면 됩니다.

 

2. 해결

 - 하나하나 삭제를 해주면 되지만, 일괄적으로 삭제를 하려면 아래 명령어를 사용하면 좋습니다.

 

$ vi -b test.sh

:%s/^M//g

 - 이때 주의해야 할 점은 "^M" 입력시 일반 타이핑으로 적는게 아니고, Ctrl+V, Ctrl+M 키를 연속적으로 누르면 입력됩니다.

 

3. vi 에서 문자열 수정 Tip

 (1) 현재 행에서의 명령을 수행

:s/원래문자열/바꿀문자열


 (2) 전체 행에서의 명령을 수행

:s/원래문자열/바꿀문자열/g


 (3) 1-10행에서의 명령을 수행

:1,10s/원래문자열/바꿀문자열/g
반응형

'Unix & Linux' 카테고리의 다른 글

awk : 원하는 문구만 추출  (2) 2024.11.19
웹 응답이 없을시 처리 스크립트  (0) 2024.11.14
tar.lzo  (0) 2023.09.25
yum 에서 설치가 되지 않을때(appstream)  (0) 2022.06.20
[HP-UX] vi 자동들여쓰기(?) 문제  (0) 2022.06.17