다른 디렉토리에서 스크립트를 실행하는 방법? 시도했다

나는 이것을 시도했다

./home/user/scripts/someScript

하지만 작동하지 않습니다

그러한 파일이나 디렉토리가 없습니다

어떤 아이디어?



답변

명령의 선행 점은 “현재 디렉토리에 상대적”을 의미합니다. 그것을 제거하면 ” someScript디렉토리 의 파일 /home/user/scripts:

/home/user/scripts/someScript

“권한이 거부되었습니다”가 표시되면 다른 사용자의 디렉토리에있는 파일에 액세스 할 수있는 권한이 없거나 파일이 실행 가능하지 않기 때문입니다. 실행 가능하게하려면 다음을 실행하십시오.

chmod +x /home/user/scripts/someScript


답변

스크립트가 실행되는 동일한 폴더에있는 리소스에 액세스해야하고 상대 경로로 지정한 경우 스크립트가 중단됩니다.

나는 항상 cd $(dirname $0)스크립트 헤드에 a 를 추가 하여 스크립트를 포함하는 폴더가 루트 폴더가되도록합니다.


답변

제거 .

실행 가능한 scrip을 실행 가능하게 만들면 chmod 755 <nameofscript>스크립트 경로 만 입력하면됩니다.

./script사용되는 것을 볼 때 스크립트가 실행중인 디렉토리에 스크립트가 있음을 쉘에 알려줍니다. 전체 경로를 사용하려면을 입력하십시오 sh /home/user/scripts/someScript.


답변