0
我很新的bash腳本,但我建立一個NAS與FreeNAS我發現GUI沒有默認實現日誌HDD溫度,所以我試圖設置一個bash腳本會將臨時記錄記錄到文件並作爲cron作業運行。我最終拼湊起來的東西看起來非常混亂,但在從控制檯作爲腳本運行時工作。bash腳本與smartctl不工作
HDDtemps.sh:
#!/bin/bash --
PATH=$PATH:/tmp:/usr/local/sbin
printf '%s %s %s %s %s\n' $(echo -n $(date +"%b %d %T")) ' :: ada0 Temperature Celsius = ' $(echo $(smartctl -A /dev/ada0 | grep Temperature_Celsius) | awk '{print $10}') >> temperatures.txt
printf '%s %s %s %s %s\n' $(echo -n $(date +"%b %d %T")) ' :: ada1 Temperature Celsius = ' $(echo $(smartctl -A /dev/ada1 | grep Temperature_Celsius) | awk '{print $10}') >> temperatures.txt
exit;
然而,當由cron執行時,該文件被創建並打印成,但僅
Feb 17 19:22:00 :: ada0 Temperature Celsius =
被寫入到該文件中,溫度是沒有出現。我不確定我在這裏做錯了什麼,我會很感激任何幫助。
謝謝!
編輯:
的的cronjob是
* * * * * sh /path/to/HDDtemps.sh
您是否安裝了smartmontools [smartmontools](http://www.smartmontools.org/) – Rustam 2015-02-18 03:00:22
是的,就像我說的那樣,腳本在通過控制檯執行時按預期運行,溫度正確寫入文件,它是隻有一個來自cronjob的問題。 – odin 2015-02-18 04:06:19