Centos 7定时任务每5分种执行一次python脚本
1. 创建py脚本:
请确保创建的python.py脚本有可执行权限(chmod +x python.py)。示例代码如下:
#!/usr/bin/env python
# coding=utf8
print('This is a test python script')
2. 创建日志文件:
请确保创建的pylog.log文件可写。示例代码如下:
touch pylog.log
3. 编辑crontab:
执行crontab -e命令编辑定时任务。示例代码如下:
*/5 * * * * /root/netchack/python.py >> /root/netchack/pylog.log 2>&1
解析:
*/5 * * * *:表示每5分钟执行一次任务。
/usr/bin/python:表示python可执行程序路径。
/path/to/python.py:表示任务执行的脚本路径。
>> /path/to/pylog.log:将标准输出追加到文件/pylog.log中。
2>&1:将标准错误输出追加到标准输出中。
4. 保存、退出:
保存文件并退出编辑器。
注意事项:
1. 建议使用绝对路径。
2. 脚本中可能会使用到相对于当前执行路径的文件或目录,需要特别处理。
3. 如果需要使用到特定python环境,请使用该环境下的python可执行程序路径。
4. 日志文件最好定期进行切割,以免无限制增长。
计划任务追加LOG日志时加上时间
可以借助linux系统自带的date命令来获取当前时间,然后将输出内容追加到日志文件中。以下是示例代码:
*/5 * * * * /usr/bin/python /path/to/python.py >> /path/to/pylog.log 2>&1; echo $(date +\%Y-\%m-\%d\ %H:\%M:\%S) >> /path/to/pylog.log
在上面的计划任务中,`$(date +\%Y-\%m-\%d\ %H:\%M:\%S)`用于获取当前时间,然后使用`echo`命令将时间戳追加到日志文件中。`\%`用于转义特殊字符`%`,确保时间戳的格式正确输出。
运行上面的计划任务后,每5分钟执行一次python脚本,并将输出内容追加到pylog.log文件中,同时每次追加一条带有时间戳的日志信息。