diff --git a/README.md b/README.md index abdce60..4cc59fd 100644 --- a/README.md +++ b/README.md @@ -109,7 +109,7 @@ Quick Reference [Ansible](./docs/ansible.md) [Awk](./docs/awk.md) [Conan](./docs/conan.md) -[CocoaPods](./docs/cocoapods.md) +[CocoaPods](./docs/cocoapods.md) [Cargo](./docs/cargo.md) [Curl](./docs/curl.md) [Chmod](./docs/chmod.md) diff --git a/docs/cron.md b/docs/cron.md index 282cf1b..9a8314a 100644 --- a/docs/cron.md +++ b/docs/cron.md @@ -16,8 +16,8 @@ Min Hour Day Mon Weekday ------- -``` -* * * * * 要执行的命令 +```bash +* * * * * <要执行的命令> ┬ ┬ ┬ ┬ ┬ │ │ │ │ └─ 星期几 (0=周日 .. 6=星期六) │ │ │ └────── 月 (1..12) @@ -30,12 +30,13 @@ Min Hour Day Mon Weekday | 字段 | 范围 | 特殊字符 | |--------------|--------|--------------------| -| 分钟 Minute | 0 - 59 | , - * / | -| 小时 Hour | 0 - 23 | , - * / | -| 月份中的某天 | 1 - 31 | , - * ? / L W | -| 月 Month | 1 - 12 | , - * / | -| 星期几 | 0 - 6 | , - * ? / L # | - +| 分钟 Minute | 0 - 59 | , - * / +| 小时 Hour | 0 - 23 | , - * / +| 月份中的某天 | 1 - 31 | , - * ? / L W +| 月 Month | 1 - 12 | , - * / +| 星期几 | 0 - 6 | , - * ? / L # +| 年 Year | 1970–2099 | , - + ### 示例 @@ -50,33 +51,38 @@ Min Hour Day Mon Weekday | `0 0 * * 0` | 每个星期日的午夜 | | `15 2 * * 1L` | 每月最后一个星期一凌晨 2 点 15 分 | | `15 0 * * 4#2` | 每个月的第二个星期四早上 00:15 | -| `0 0 0 1 * *` | 每个月的 1 日(每月) | -| `0 0 0 1 1 *` | 每年 1 月 1 日(每年) | +| `0 0 0 1 * *` | 每个月的 1 日(每月) | +| `0 0 0 1 1 *` | 每年 1 月 1 日(每年) | | `@reboot` | 每次重启 _(非标准)_ | ### 特殊字符串 | 特殊字符串 | 意义 | |----------------|----------------------------------------------------| -| @reboot | 运行一次,在系统启动时 _(非标准)_ | -| @yearly | 每年运行一次,“0 0 1 1 *” _(非标准)_ | -| @annually | (与@yearly 相同)_(非标准)_ | -| @monthly | 每月运行一次,“0 0 1 \* \*” _(非标准)_ | -| @weekly | 每周运行一次,“0 0 \* \* 0” _(非标准)_ | -| @daily | 每天运行一次,“0 0 \* \* \*” _(非标准)_ | -| @midnight | (与@daily 相同)_(非标准)_ | -| @hourly | 每小时运行一次,“0 \* \* \* \*” _(非标准)_ | +| @reboot | 运行一次,在系统启动时 _(非标准)_ | +| @yearly | 每年运行一次,“0 0 1 1 *” _(非标准)_ | +| @annually | (与@yearly 相同)_(非标准)_ | +| @monthly | 每月运行一次,“0 0 1 \* \*” _(非标准)_ | +| @weekly | 每周运行一次,“0 0 \* \* 0” _(非标准)_ | +| @daily | 每天运行一次,“0 0 \* \* \*” _(非标准)_ | +| @midnight | (与@daily 相同)_(非标准)_ | +| @hourly | 每小时运行一次,“0 \* \* \* \*” _(非标准)_ | ### Crontab 命令 | - | - | |--------------|---------------------------------------------| -| `crontab -e` | 如果不存在,则编辑或创建一个 crontab 文件。 | -| `crontab -l` | 显示 crontab 文件。 | -| `crontab -r` | 删除 crontab 文件。 | -| `crontab -v` | 显示您上次编辑 crontab 文件的时间。 _(非标准)_ | -| `echo "@reboot echo hi" | crontab` | 轻松添加任务 | +| `crontab -e` | 如果不存在,则编辑或创建一个 crontab 文件 | +| `crontab -l` | 显示 crontab 文件 | +| `crontab -r` | 删除 crontab 文件 | +| `crontab -v` | 显示您上次编辑 crontab 文件的时间 _(非标准)_ | + +轻松添加任务 + +```bash +echo "@reboot echo hi" \| crontab +``` ### 特殊字符 @@ -84,9 +90,9 @@ Min Hour Day Mon Weekday | 特殊字符 | 说明 | |---------------------|------------| `星号(*)` | 匹配字段中的所有值或任何可能的值。 -`横杆(-)` | 用于定义范围。例如:第 5 个字段(星期几)中的 1-5 每个工作日,即星期一到星期五 -`斜线 (/)` | 第一个字段(分钟)/15 表示每十五分钟或范围的增量。 -`逗号(,)` | 用于分隔项目。例如:第二个字段(小时)中的 2、6、8 在凌晨 2 点、早上 6 点和早上 8 点执行 +`横杆(-)` | 用于定义范围。例如:第 5 个字段(星期几)中的 1-5 每个工作日,即星期一到星期五 +`斜线 (/)` | 第一个字段(分钟)/15 表示每十五分钟或范围的增量。 +`逗号(,)` | 用于分隔项目。例如:第二个字段(小时)中的 2、6、8 在凌晨 2 点、早上 6 点和早上 8 点执行 `L` | 仅允许用于 `月份中的某天` 或 `星期几` 字段,`星期几` 中的 `2L` 表示每个月的最后一个星期二 `井号 (#)` | 仅允许用于 `星期几` 字段,后面必须在 1 到 5 的范围内。例如,`4#1` 表示给定月份的“第一个星期四”。 `问号(?)` | 可以代替“*”并允许用于月份和星期几。使用仅限于 cron 表达式中的 `月份中的某天` 或 `星期几`。