crontab 只执行一次表达式怎么写
时间: 2023-10-25 08:12:57 浏览: 309
如果你想让 crontab 只执行一次表达式,可以使用 `at` 命令。`at` 命令允许你在指定的时间执行一次命令,而不是像 crontab 一样重复执行。下面是一个例子:
```
echo "ls -l /home" | at now
```
这个命令将在当前时间执行一次 `ls -l /home` 命令。你可以在 `at` 命令后面指定一个时间,比如:
```
echo "ls -l /home" | at 2:00am tomorrow
```
这个命令将在明天凌晨 2 点执行一次 `ls -l /home` 命令。你也可以将命令写入一个脚本文件中,然后使用 `at` 命令执行这个脚本文件。
相关问题
crontab表达式每周日执行一次
要设置crontab表达式在每周日执行一次,可以使用以下表达式:
```
0 0 * * 0 command
```
这个表达式的含义是,在每天的午夜零点(00:00)执行命令,并且只在每周的第一天(周日)生效。其中,`0 0` 表示小时和分钟都为零,`* *` 表示每月的所有天和所有月份,`0` 表示星期日。
请确保你的命令是绝对路径或者在环境变量中可用。你可以将 `command` 替换为你实际要执行的命令或脚本。另外,记得使用 `crontab -e` 命令来编辑你的crontab文件,并将这个表达式添加到其中。
crontab表达式 每十分钟执行一次
要编写一个 crontab 表达式,使其每十分钟执行一次,可以按照以下格式编写:
```
*/10 * * * * command
```
其中,星号(*)表示所有可能的值,正斜杠(/)表示间隔。因此,*/10 表示每隔 10 个时间单位执行一次任务。其余的五个星号分别表示分钟、小时、天、月和星期几,可以使用特殊符号表示范围或间隔,也可以使用固定的数值。
在 command 的位置,添加要执行的命令即可。例如,要每十分钟执行一次 /usr/bin/php /var/www/html/script.php:
```
*/10 * * * * /usr/bin/php /var/www/html/script.php
```
这样,crontab 就会在每小时的第 0 分钟、10 分钟、20 分钟、30 分钟、40 分钟和 50 分钟时分别执行该命令。
阅读全文