
명령이 현재 디렉터리에서 실행했다고 생각하도록 다른 디렉터리에 있는 명령을 실행하려면 어떻게 해야 합니까?
명령이 호출된 위치를 가져오기 위해 basename()
또는 argv[0]
(또는 호출되는 모든 항목)을 사용하고 해당 디렉토리에 파일이 필요한 경우 응용 프로그램을 호출한 디렉토리에서 찾을 수 있습니다. 즉 잘못된 것입니다.
물론, cd
먼저 디렉터리로 이동하여 호출할 수 있지만 먼저 해당 디렉터리에서 실행했다고 생각하도록 응용 프로그램을 호출하는 방법이 있습니까( cd
먼저 ing하지 않고)?
가능하다면 이것을 에서 사용하겠습니다 . 거기에서 crontab
사용할 생각이 겁이 나기 때문 입니다.cd
답변1
cd
crontab에서 사용하는 것이 왜 겁을 주나요?
일시적으로 디렉토리를 변경한 후 다시 돌아오려면 다음을 사용할 수 있습니다 pushd
.popd
답변2
다음과 같은 스크립트를 만들 수 있습니다.
#!/bin/sh
cd /dir/
yourcommand
그런 다음 어딘가에 저장하고 해당 스크립트를 crontab에 추가하십시오.