如何使用 shell script 自動增加到 /etc/crontab ..

如果您覺得您的問題不屬於 debian desktop 或是 debian server 版的範圍內,請在這裡發問。

版主: mufa

如何使用 shell script 自動增加到 /etc/crontab ..

文章protech » 週六 11月 18, 2006 3:46 am

我想在一段 shell script 中把一行由數個變數組成的指令寫到 /etc/crontab 中 ..

可是我無法把這數個變數弄成要輸出的行 ..

例如 :

59 20 * * * root /sbin/shutdown -r now

我程式中的 分 , 時 是變數 , /sbin/shutdown -r now 這也是變數 ..

當我嘗試把他弄成一行時 , 都會在那 3 個 * 的地方出問題 ..~_~

不管我是用 '' 還是 "" 或是 \ / 等 , 他就是會把所有的變數代進去 ..

最好的狀況是會變成 59 20 '*' '*' '*' root /sbin/shutdown -r now

請問有什麼方式可以做到嗎 ??
protech
 

文章redjoe » 週六 11月 18, 2006 10:26 am

shell script 放上來大家看看.
redjoe
快樂的大學生
快樂的大學生
 
文章: 518
註冊時間: 週一 4月 07, 2003 10:15 pm
來自: Taiwan

文章Tetralet » 週六 11月 18, 2006 7:02 pm

代碼: 選擇全部
$ a=59
$ b=20
$ c=*
$ d=*
$ e=*
$ f=root
$ g='/sbin/shutdown -r now'
$ echo "$a $b $c $d $e $f $g"
59 20 * * * root /sbin/shutdown -r now

嗯... 看起來並不難呀?
時間並不能治療我心中的疼痛
南方的春天說什麼也溫暖不了我冰冷的血

誦唱大復活咒文,今天的 Tetralet 又在唧唧喳喳了 重生!
Tetralet
俺是博士
俺是博士
 
文章: 3078
註冊時間: 週四 11月 28, 2002 3:02 pm

文章訪客 » 週六 11月 18, 2006 9:34 pm

大大 ..

用 echo 時不會有問題 , 這我也是很納悶 ..~_~

我程式是要在代入一個變數 ..

如 h="$a $b $c $d $e $f $g""

echo $h

這時的結果就錯了 ..@@

結果會變成下面這樣 ..

59 20 所有目錄下的檔案 root /sbin/shutdown -r now
訪客
 

文章capitalm » 週六 11月 18, 2006 10:41 pm

echo $h
改成
echo "$h"
就可以了喔 8-)
capitalm
懵懂的國中生
懵懂的國中生
 
文章: 121
註冊時間: 週四 10月 07, 2004 1:14 pm

文章訪客 » 週六 11月 18, 2006 11:35 pm

謝了 ...^^

剛學 shell script , 快被他這些變數搞昏頭了 ...~_~
訪客
 

文章HeroTsai » 週日 11月 19, 2006 2:09 pm

Quote (引號) 的問題
這邊有教學
http://www.grymoire.com/Unix/index.html
HeroTsai
可愛的小學生
可愛的小學生
 
文章: 30
註冊時間: 週六 2月 05, 2005 11:54 pm


回到 debian misc

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客

cron