1)输入crontab -e命令,根据提示直接在当前cron task文本最后面插入如下命令(记得回车):
- echo “Hello world!”
保存退出,并通过crontab -l查看定时任务创建成功。
2、然后等待,若干分钟后发现屏幕并未输出”Hello world!”怎么回事?!
1)刚开始怀疑是cron服务没有启动,遂执行:
sudo service cron status
发现cron服务是running的,排除;
2)继而怀疑是任务文件创建后未能被系统及时get到,因而执行:
sudo service cron restart
重启cron后问题依旧,排除;
3)于是进一步查看cron运行日志(/var/log/cron.log),但是并未找到相关文件,原因是ubuntu默认没有开cron日志,执行命令:
sudo vim /etc/rsyslog.d/50-default.conf
找到cron.log相关行,将前面注释符#去掉,保存退出,重启rsyslog:
sudo service rsyslog restart
执行less -10 /var/log/cron.log再次查看cron运行日志,log出来了,提示如下信息:
No
MTA installed, discarding output
原因是cron把屏幕输出都发送到email了,而当前环境并未安装email server,于是系统报错,解决方面就是不要直接向屏幕输出内容,而是重定向到一个文件。
3、修改任务文件
sudo vim /var/spool/cron/crontabs/waterfronter
将末行改为:
- echo “Hello world!” >> /tmp/cron_log.txt
保存退出,同时reload cron服务:
sudo service cron reload
若干分钟后查看/tmp/cron_log.txt,“Hello world!”每隔一分钟输出一次,问题解决。
OK ,下面来写爬虫
1、写一个shell脚本,加入命名为test.sh内容如下:
1 | #! /bin/sh |
通过crontab -e命令新增一个定时器,定时执行上面的shell脚本test.sh:
crontab 命令,自动百度.
下面的命令是每分钟一次执行
- (/bin/sh /data/apps/scrapy/weather/weather/spiders/test.sh)
本文作者: NUK
最后更新: 2023年12月13日 17:35:03
本文链接: http://www.uilucky.com/post/2942d230.html
版权声明: 本作品采用 CC BY-NC-SA 4.0 许可协议进行许可,转载请注明出处!