如何從 /etc/init.d 的 shell 檔案中的指令刪除檔案?

如何從 /etc/init.d 的 shell 檔案中的指令刪除檔案?

我有一個關於使用/etc/init.dshell 腳本的問題。

我想要做的就是從 shell 腳本內的命令中刪除一個文件,如下所示:

case $1 in

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

esac

我將其保存為測試並創建memcached.pid文件。

當我/etc/init.d/test從資料夾內使用腳本運行 stop時/etc/init.d/,該memcached.pid檔案不會被刪除。

當我從主目錄運行腳本時,它工作正常。

是否需要特殊的命令格式或結構?

答案1

使用 rm 的完整路徑;確認它在您的系統上相同:

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

初始化腳本通常不會設定您(或根)的 PATH 環境變數。

相關內容