我正在嘗試創建腳本來每日下載文件並覆蓋舊版本。製作腳本通過ssh下載文件和cron作業
我很確定我需要一個cron作業和一個帶有wget行的shell腳本,但據我所知。另外,我需要通過ssh完成所有這些工作,除非我還沒有意識到另一種方式。
如果我通過SSH來做,我需要通過過程中的各個步驟來使用哪些命令? cron和shell文件會是什麼樣子?如果有更好的方法,請指教!
謝謝! Zeem
我正在嘗試創建腳本來每日下載文件並覆蓋舊版本。製作腳本通過ssh下載文件和cron作業
我很確定我需要一個cron作業和一個帶有wget行的shell腳本,但據我所知。另外,我需要通過ssh完成所有這些工作,除非我還沒有意識到另一種方式。
如果我通過SSH來做,我需要通過過程中的各個步驟來使用哪些命令? cron和shell文件會是什麼樣子?如果有更好的方法,請指教!
謝謝! Zeem
從你的描述,我想象如下:
連接到服務器的wget找到的位置
這wget的
(我的機器上它是在/ usr/bin中/ wget的)
使用文本編輯器,如微微或vi以下內容添加到您的/ etc/crontab中(或cronjobs文件):
@每天在/ usr/bin中/ wget的http://remote-host.name/path/to/file.txt /local/path/to/file.txt
(如果您添加到了/ etc/crontab中,你可能需要額外的用戶參數,但你可以請參閱crontab幫助。)
希望有所幫助。
在主機之間實現不需要密碼的ssh認證。 http://www.linuxproblem.org/art_9.html
因此,主機A可以使用ssh在主機B上創建/實現腳本或cronjob。
要使用腳本創建cronjob,腳本會在/etc/cron.d/CronJobName
處創建(例如)文本文件。重要的是,該文件的內容對應於玉米格式:http://en.wikipedia.org/wiki/Cron#Examples
(我希望,我的理解對不對你的問題)
謝謝您的回答,值得慶幸的是要簡單得多。我能夠通過cpanel添加cron作業,並且wget行直接在那裏。
爲什麼你需要SSH來自動下載文件? 'wget'已經支持SSL。刪除舊版本是「rm」的工作。 cron作業是通過'crontab -e'創建的。發佈你到目前爲止,人們會回答你剩下的問題。 – 2011-05-20 14:07:25
我的意思是使用SSH創建cron作業。 – zeemy23 2011-05-20 14:16:02
@KilianFoth有時候會想通過SSH登錄來下載文件,這些文件不應該公開訪問。例如備份文件。如果有人可以下載它們,那將是一團糟:D – Robert 2015-10-17 17:15:31