我正在研究一個小型bash腳本,該腳本計算具有特定名稱的腳本運行的頻率。簡單的bash腳本按名稱計算正在運行的進程
ps -ef | grep -v grep | grep scrape_data.php | wc -l
是我使用的代碼,通過ssh輸出scrape_data.php運行的次數。目前輸出爲3。所以這工作正常。
現在我想要做一個小腳本,做一些當計數小於1
#!/bin/sh
if [ ps -ef | grep -v grep | grep scrape_data.php | wc -l ] -lt 1; then
exit 0
#HERE PUT CODE TO START NEW PROCESS
else
exit 0
fi
上面的腳本是我到目前爲止,但它不工作。我得到這個錯誤:
[[email protected] crons]# ./check_data.sh
./check_data.sh: line 4: [: missing `]'
wc: invalid option -- e
我在做錯誤的if語句?
謝謝你,工作! –
我在CentOS 6.5上,我不確定爲什麼'-lt'不適合我,用'-gt'代替它適用於我。 – hailong