2013-03-05 32 views
2

我想執行腳本並使其安排下一次執行。樣本是:Bash:使用'at'編程當前腳本的下一次執行

#!/bin/bash 

TMP=/tmp/text.txt 
SCRIPT=$(readlink -f $0) 

date >>$TMP 
at -f $SCRIPT now + 1 minutes >>$TMP 2>&1 
echo -e "\n" >>$TMP 

樣本執行會做如下:

  1. 首先執行確定。附表下一分鐘
  2. 第二次執行寫入OK,但不安排

結果輸出將是:

tue mar 5 14:34:01 CET 2013 
job 15 at 2013-03-05 14:35 


tue mar 5 14:35:00 CET 2013 
job 16 at 2013-03-05 14:36 

[now at 2013-03-05 14:38] 

atq輸出什麼,我看不出有任何的/ var/AT /工作(事實上​​,ls /var/at*輸出什麼都沒有。有一個在在/ var /郵件的任何用戶沒有消息/。我試圖在CentOS版本5.6 x86_64的

任何人有任何線索,以什麼可能會發生?

+2

你檢查此線 - 輸出:SCRIPT = $(readlink -f $ 0)? – suspectus 2013-03-05 13:45:51

+0

嘗試使用其完全合格的heirarchic名稱運行腳本,例如:'/ home/fred/bin/myscript'它可能是第二次繞過它從另一個目錄運行。 – cdarke 2013-03-05 14:56:54

回答

1

suspectus,你已經打了點... echo $SCRIPT給「/斌/慶典」 ......我手工編寫的完整路徑和現在的作品