测试有时写的脚本需要每天运行,一些技术稍微好点的同学可能会通过 Jenkins、k8s 或者 xxjob 这类的东西去定时任务,但是对于技能比较弱的同学可能用这些东西比较费劲,所以大概介绍下 Linux 的定时任务操作流程吧,我这里尽量写的详细一些,此处以 python 脚本为例
1、一台 Linux 服务器(虚拟机也行)
  2、测试脚本
  3、运行环境   python 安装过程就不讲了 现版本的 Linux 基本自带 python3 了 
最简单的方式 sftp 命令上传 (文件太大不建议  此方法传输比较慢)
常用命令  cd  pwd ls   put get    lcd lpwd lls    前面多个 l 为本地命令   
# 连接命令
sftp user@ip
# 上传文件 
put xxx
#上传文件夹 
put -r xxx  
# 最简单的  
vi /etc/crontab
# 原文件如下
# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name command to be executed
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
# 定时任务格式分为7段 以空格区分
# 分钟 小时 天 月 周几 执行用户  执行命令
# 符号包括 * , -  /
# 星号* 所有值
# 逗号, 列表隔离 比如3点和6点执行  
* 3,6 * * * root  xxx
# 中横杠 -  范围符号  比如1月到3月执行  
* * * 1-3 * root xxx
# 斜杠/  执行频率  比如每2天执行  
* * */2 * * root xxx
# 正题   假如现在有个脚本路径为  /home/test/test_script.py  要求4到6月每隔2天早上8点15分执行
# 首先确认python路径
which python3   # 返回路径为 /usr/bin/python3
# 编辑定时任务   
15 8 */2 4-6 * root /usr/bin/python3 /home/test/test_script.py
# ============================================================
# 编辑完成后 重启定时任务
service cron restart  # 有的可能是 service crond restart
# 查看执行情况
cat /var/log/cron   #或 cat /var/log/cron.log
# 我用的系统是ubuntu  需要提前设置
sudo vi /etc/rsyslog.d/50-default.conf
cron.*              /var/log/cron.log #将cron前面的注释符去掉 
#重启rsyslog
sudo  service rsyslog  restart
sudo service cron restart
#查看crontab日志
cat  /var/log/cron.log