📖 知识点
1. Windows 任务计划 → Linux cron
| Windows | Linux | 说明 |
|---|---|---|
| 任务计划程序 | cron | 定时自动执行任务 |
| 图形界面设置 |
| 用命令配置 |
cron 是 Linux 的 "定时闹钟管家":你告诉它 "每天几点、每周几做什么",它就按时自动执行,不用人盯着。写脚本 + 配 cron = 真正的无人值守自动化。
💡 生活比喻Windows 任务计划像 "手机定闹钟";cron 是 Linux 的闹钟 —— 你设好 "每天早上 8 点备份",它就雷打不动到点响铃(执行任务),你只管睡大觉。
2. crontab 基本命令
crontab -e # 编辑定时任务(第一次会让你选编辑器)
crontab -l # 查看当前所有定时任务
crontab -r # 删除所有定时任务(慎用)
crontab 是 "管理 cron 任务的工具":
-e编辑、-l查看、-r删除。
3. 编辑定时任务:crontab -e
第一次运行 crontab -e,会问用哪个编辑器(通常选 nano 或 vim),然后打开一个空文件,在这里写定时任务:
crontab -e
每行写一条任务:格式是 "时间 + 要执行的命令"。
4. 一个最简单的例子
# 每天 8:00 执行 backup.sh(第3参数是脚本完整路径)
0 8 * * * /home/user/backup.sh
这条的意思:每天 8 点整,执行
/home/user/backup.sh。具体 "0 8 * * *" 五个字段 Day41 细讲,今天先认识结构。
⚠️ 易错提醒
crontab -e编辑、crontab -l查看、crontab -r删除,别记混
crontab -e里每条任务写 "时间 + 命令完整路径",一行一条脚本路径要写绝对路径(如
/home/user/backup.sh),不要用相对路径
⚔️ Kata 实战任务
任务需求:
用
crontab -l查看当前有没有定时任务(第一次可能是空的)用
crontab -e打开编辑界面(第一次选编辑器,通常 nano)在里面加一条测试任务:每天 8 点执行
echo写日志(先不追求精确时间,Day41 再学格式)保存退出后,用
crontab -l确认任务已保存体会 "定时召唤" 的配置方式
参考代码(在终端依次敲)
# 1. 查看当前定时任务
crontab -l
# 2. 编辑定时任务(会打开编辑器)
crontab -e
# 在编辑器里加一行(示例,Day41详解时间格式):
# 0 8 * * * echo "cron 定时任务测试" >> /home/user/cron日志.txt
# 保存退出
# 3. 确认任务已保存
crontab -l
运行示例:
user@linux:~$ crontab -l
no crontab for user
(第一次:还没有任务)
user@linux:~$ crontab -e
(打开编辑器,加入一行,保存退出)
user@linux:~$ crontab -l
0 8 * * * echo "cron 定时任务测试" >> /home/user/cron日志.txt
(任务已保存,每天8点执行)
💡 体会:
crontab -e里写好 "时间 + 命令" 保存后,crontab -l能看到这条任务。从这一刻起,它会在设定的时间自动执行 —— 定时召唤已经启动。
🧠 思考题
crontab -e、crontab -l、crontab -r分别做什么?哪个是 "删除"?定时任务里 "命令" 为什么要写绝对路径?相对路径在 cron 里会有什么问题?
行者孙Python