我希望讓cron執行delete_snapshot.bash,但是當我嘗試創建cron時,如下所示:
*/1 * * * * /var/www/mango_gis/delete_snapshot.bash>/dev/null
它根本沒有執行我的腳本,因爲當我沒有看到它刪除亞馬遜雲中的快照,並且我的腳本已經用bash測試過,它工作正常。Cron作業執行backup.bash
這裏是如下我的腳本:
#!/bin/bash
get()
{
local pos=$1
shift
eval 'echo ${'$pos'}';
}
length(){ echo $#; }
find_snapshots()
{
echo $(ec2-describe-snapshots | xargs -n1 basename);
}
snapshots=$(find_snapshots)
len=$(length $snapshots)
row_count=$(($len/6))
if(($row_count > 6)); then
delete_count=$(($row_count-6))
for ((i=1; i<=$delete_count; i++)); do
ec2-delete-snapshot $(echo $(get $((2+$((6*$(($i-1)))))) $snapshots)) > /dev/null
done
fi
在上面,我發現這個問題是我稱之爲EC2命令一個命令。
我測試過創建一個cron作業來調用這個命令是ec2-describe-snapshots,
但它不起作用。
請指教...
Leakhina
你怎麼k現在它「根本沒有執行腳本?」你丟棄stdout兩次 - 一次在你的crontab中,一次在腳本本身 - 也許腳本*正在執行,但其他一些錯誤被丟棄或丟失。 你的'crond'日誌說什麼? 'crond'錯誤在哪裏去?另一個瑣碎的cronjob是否可以運行(例如'*/1 * * * * logger -p daemon.err - 「我是一個cronjob」')? – pilcrow 2010-06-09 06:53:02
我知道它沒有執行腳本,因爲我沒有刪除我想要從亞馬遜雲計算中刪除的快照,所以它不起作用。任何方式如何查看cron日誌? – leejava 2010-06-09 07:26:39
你可以在你的syslog.conf中使用「cron」來定義日誌文件 – Thariama 2010-06-09 08:42:15