编写一个脚本来通过 ssh 下载文件和一个 cron 作业
我正在尝试创建一个脚本来每天下载一个文件,并覆盖旧版本。
我很确定我需要一个 cron 作业,以及一个包含 wget 行的 shell 脚本,但据我所知,这就是。另外,我需要通过 ssh 完成所有这些操作,除非有其他我不知道的方法。
如果我通过 SSH 进行操作,在此过程的各个步骤中我需要使用哪些命令? cron 和 shell 文件是什么样子的?如果有更好的方法,请赐教!
谢谢! 泽姆
I'm trying to create a script to download a file daily with the older version overwritten.
I'm pretty sure I need a cron job, and a shell script with a wget line in it, but that is as far as I know. Also, I need to do all of this through ssh, unless there's another way I'm not aware of.
If I do it through SSH, what commands do I need to use through the various steps in the process? What will the cron and the shell files look like? If there's a better way, please enlighten!
Thanks!
Zeem
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
在主机之间实现无密码 ssh 身份验证。
http://www.linuxproblem.org/art_9.html
所以主机 A 可以创建/实现一个使用 ssh 在主机 B 上运行脚本或 cronjob。
要使用脚本创建 cronjob,您的脚本会在
/etc/cron.d/CronJobName
处创建(例如)一个文本文件。重要的是,文件的内容对应于玉米格式: http://en.wikipedia .org/wiki/Cron#Examples(我希望我正确理解你的问题)
Implement password-less ssh authentication between the hosts.
http://www.linuxproblem.org/art_9.html
So host A can create/implement an script or cronjob on host B using ssh.
To create a cronjob by using a script, your script create (for example) an textfile at
/etc/cron.d/CronJobName
. It is important, that the content of the file corresponds to the corn format: http://en.wikipedia.org/wiki/Cron#Examples(I hope, I understand your question right)
感谢您的回答,幸运的是,事情变得简单多了。我可以通过 cpanel 添加一个 cron 作业,并且 wget 行直接进入那里。
Thanks for your answers, Thankfully it was much simpler. I was able to add a cron job via cpanel, and the wget line went straight in there.
根据您的描述,我描绘了以下内容:
查找 wget 的位置
<块引用>
哪个wget
(在我的机器上是 /usr/bin/wget)
使用文本编辑器(例如 pico 或 vi)将以下内容添加到 /etc/crontab (或 cronjobs 文件):
@daily /usr/bin/wget http://remote-host.name/ path/to/file.txt /local/path/to/file.txt
(如果将其添加到 /etc/crontab,您可能需要额外的用户参数,但您可以查看 crontab 帮助。)
希望有帮助。
From your description, I'm picturing the following:
find the location of wget
(on my machine it's /usr/bin/wget)
add the following to your /etc/crontab (or cronjobs file) using a text editor, such as pico or vi:
@daily /usr/bin/wget http://remote-host.name/path/to/file.txt /local/path/to/file.txt
(If you add this to the /etc/crontab, you'll probably need the additional user parameter, but you can see crontab help for that.)
hope that helps.