我正在尝试创建脚本来每日下载文件并覆盖旧版本。制作脚本通过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