crontab周期执行
时间: 2023-10-22 22:06:12 浏览: 97
crontab是一个用于在特定时间间隔内周期性执行任务的工具。你可以使用crontab来设置定时任务,以便在特定的时间和日期自动运行脚本或命令。
要使用crontab设置周期执行,你需要编辑用户的crontab表。可以通过运行以下命令来编辑当前用户的crontab表:
```
crontab -e
```
这将打开一个文本编辑器,你可以在其中添加或编辑cron任务。每一行代表一个任务,具有特定的时间和命令。
下面是一些示例用法:
1. 每天的特定时间执行脚本:
```
0 10 * * * /path/to/script.sh
```
上述示例表示在每天10点执行`/path/to/script.sh`脚本。
2. 每周执行脚本:
```
0 0 * * 0 /path/to/script.sh
```
上述示例表示在每个星期日的午夜执行`/path/to/script.sh`脚本。
3. 每小时执行脚本:
```
0 * * * * /path/to/script.sh
```
上述示例表示每小时执行`/path/to/script.sh`脚本。
编辑完crontab后,保存并关闭文件。新的cron任务将立即生效。
相关问题
linux shell编程 用crontab周期执行函数
您可以在 Linux Shell 编写一个函数,然后使用 crontab 周期性地执行该函数。
以下是一个示例函数,该函数将当前日期和时间写入文件 "/tmp/date.log" 中:
```bash
function log_date {
date >> /tmp/date.log
}
```
要使用 crontab 周期性地执行该函数,可以按照以下步骤操作:
1. 打开 crontab 编辑器:
```bash
crontab -e
```
2. 在编辑器中添加一个新的 cron 任务,该任务将使用您的函数:
```bash
* * * * * /bin/bash -c 'source /path/to/your/script.sh && log_date'
```
该 crontab 任务将每分钟执行一次,使用 `/bin/bash` 解释器执行您的脚本,然后调用您的函数 `log_date`。
3. 保存并退出编辑器。
现在您的函数将每分钟执行一次,并将日期和时间写入文件 "/tmp/date.log" 中。
linux shell编程 用crontab周期执行函数,并且将函数的值输出
为了周期性地执行函数并输出其结果,您可以将函数的输出重定向到文件中,然后在 crontab 任务中读取该文件并将其输出到标准输出。
以下是一个示例函数,该函数将计算当前日期是一年中的第几天并返回该值:
```bash
function day_of_year {
echo $(date +%j)
}
```
要使用 crontab 周期性地执行该函数并输出其结果,可以按照以下步骤操作:
1. 打开 crontab 编辑器:
```bash
crontab -e
```
2. 在编辑器中添加一个新的 cron 任务,该任务将使用您的函数并将其输出重定向到文件中:
```bash
* * * * * /bin/bash -c 'source /path/to/your/script.sh && day_of_year > /tmp/day_of_year.log'
```
该 crontab 任务将每分钟执行一次,使用 `/bin/bash` 解释器执行您的脚本,然后调用您的函数 `day_of_year` 并将其输出重定向到文件 "/tmp/day_of_year.log" 中。
3. 保存并退出编辑器。
4. 创建一个新的脚本文件,该文件将读取 /tmp/day_of_year.log 文件并将其内容输出到标准输出:
```bash
#!/bin/bash
cat /tmp/day_of_year.log
```
5. 将该脚本文件设置为可执行文件:
```bash
chmod +x /path/to/your/script.sh
```
现在您的函数将每分钟执行一次,并将其输出重定向到文件中。您可以使用另一个脚本文件读取该文件并将其输出到标准输出。如果您希望将输出写入日志文件中,可以将该脚本文件的输出重定向到文件中。
阅读全文