./ 그 이후에는 chmod가 작동하지 않습니다.

./ 그 이후에는 chmod가 작동하지 않습니다.

나는 Centos 서버에 있고 실행하려고 할 때

./script.sh

Permission Denied추가하려고 해도 여전히 오류가 발생합니다 chmod +x script.sh.

sh script.sh그래도 작동합니다.

고쳐 쓰다

스크립트 파일은 다음으로 시작합니다.#!/bin/sh

답변1

귀하의 스크립트에 "shebang"이 누락되었을 가능성이 높습니다. 시스템은 스크립트를 실행하기 위해 어떤 인터프리터를 실행해야 하는지 읽으려고 시도합니다. 시스템은 첫 번째 줄에 있고 로 시작하는 경우 "shebang"을 인식합니다 #!.

예:

#!/bin/bash
#!/bin/sh
#!/usr/bin/env python
#!/bin/sed

대부분의 스크립팅 언어에서 이는 #!주석이므로 다음과 같이 특정 인터프리터를 사용하여 명령줄에서 실행해도 오류가 발생하지 않습니다.

$ bash ./script.sh

추가 정보: https://en.wikipedia.org/wiki/Shebang_(유닉스)

관련 정보