![/bin/ksh: 잘못된 해석기: 해당 파일이나 디렉터리가 없습니다.](https://linux55.com/image/160511/%2Fbin%2Fksh%3A%20%EC%9E%98%EB%AA%BB%EB%90%9C%20%ED%95%B4%EC%84%9D%EA%B8%B0%3A%20%ED%95%B4%EB%8B%B9%20%ED%8C%8C%EC%9D%BC%EC%9D%B4%EB%82%98%20%EB%94%94%EB%A0%89%ED%84%B0%EB%A6%AC%EA%B0%80%20%EC%97%86%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
#!/bin/ksh
첫 번째 줄에 스크립트가 있습니다. 이 스크립트를 실행하려고 하면(run ./myscript.sh
) 오류가 발생합니다.
-bash: ./myscript.sh: /bin/ksh: bad interpreter: No such file or directory
source myscript.sh
하지만 또는 명령을 통해 이 스크립트를 실행하면 bash myscript.sh
스크립트가 성공적으로 실행됩니다.
예, ksh가 설치되지 않았습니다. 설치하는 것이 맞습니다. 하지만 다른 행동 ./
및 bash
/또는 다른 행동을 이해할 수 없습니다 .source
답변1
./
shebang 라인은 인터프리터를 사용하여 스크립트가 실행될 때 호출됩니다.현재 쉘 과 함께
source
사용됩니다 (source
bash 확장이므로 bash를 실행해야 함)bash script.sh
PATH의 bash 쉘은 쉘스크립트를 통해 호출됩니다.