/etc/init.d에 대한 쉘 파일의 명령에서 파일을 삭제하는 방법은 무엇입니까?

/etc/init.d에 대한 쉘 파일의 명령에서 파일을 삭제하는 방법은 무엇입니까?

/etc/init.d쉘 스크립트 작업에 관한 질문이 있습니다 .

내가 원하는 것은 다음과 같이 쉘 스크립트 내부의 명령에서 파일을 삭제하는 것입니다.

case $1 in

stop)
  echo "Stopping"
  rm -f /var/run/memcached/memcached.pid

esac

테스트로 저장하고 memcached.pid파일을 생성합니다.

폴더 /etc/init.d/test내에서 스크립트를 중지 하면 파일이 삭제되지 않습니다./etc/init.d/memcached.pid

내 홈 디렉터리에서 스크립트를 실행하면 제대로 작동합니다.

필요한 명령의 특별한 형식이나 구조가 있습니까?

답변1

rm에 대한 전체 경로를 사용하십시오. 시스템에서도 동일한지 확인하세요.

 /usr/bin/rm -f /var/run/memcached/memcached.pid

init 스크립트에는 일반적으로 (또는 루트) PATH 환경 변수가 설정되어 있지 않습니다.

관련 정보