Linux

crontab 沒有找到一個詞

  • February 20, 2020
sid="GR1"

  if sapcontrol -prot PIPE -nr $sid -prot PIPE -function GetSystemInstanceList | grep 'GRAY' >> $LOGFILE
   then
      echo "STATE: SAP system is offline. (sapcontrol)" >> $LOGFILE
      echo "STATE: SAP system is offline. (sapcontrol)"
   else
      echo "ERROR: SAP system is still online. (SAP system has to be online)" >> $LOGFILE
      echo "ERROR: SAP system is still online. Check the logs. (sapcontrol)"
      exit 1 
   fi

此狀態腳本手動工作正常,但如果我使用 crontab 執行它,它不會。它沒有找到“灰色”,但它是灰色的。sap 日誌被創建,因此腳本被執行,但它在腳本的這一部分停止,並進行 SAP 檢查。

我們在使用不是來自預設 RHEL 的包時面臨這種問題。Cron 可能與我們在前台執行的環境不同。

我們可能需要提供完整的命令路徑。

sapcontrol使用以下命令定位路徑。

whereis sapcontrol 

它可能是 /bin/sapcontrol 或 /usr/local/bin/sapcontrol

在腳本中更新獲得的完整路徑並試一試。

引用自:https://unix.stackexchange.com/questions/568681