文章目录
-
-
-
- [1. 基本用法](#1. 基本用法)
- [2. 常用参数](#2. 常用参数)
- [3. 用法举例](#3. 用法举例)
- [4. 注意事项](#4. 注意事项)
-
-
batch 命令用于在系统负载较低时运行任务。它与 at 命令类似,但任务的执行时间由系统负载决定,适合延迟执行非紧急任务。
1. 基本用法
- 语法:
bash
batch
-
功能:
- 将指定任务加入队列,等待系统负载低于 1.5(默认值)时执行。
- 适合非紧急任务的调度,确保系统资源得到更高效的利用。
-
此命令是否系统自带:通常系统自带的。若未安装,可以使用以下方法手动安装:
-
CentOS/RHEL:
bashyum install at -
Debian/Ubuntu:
bashapt install at
-
2. 常用参数
-v:显示任务执行的时间和日期。-f 文件名:从指定文件中读取任务命令。--help:显示帮助信息并退出。
3. 用法举例
-
提交一个任务并等待系统空闲时执行:
bashbatch echo "tar -czvf backup.tar.gz /data" | at now -
从文件中读取任务命令:假设任务命令保存在
task.sh中:bashbatch -f task.sh -
显示任务执行时间:
bashecho "uptime" | batch -v
4. 注意事项
-
batch依赖atd服务运行,使用前需确保atd服务已启动:bashsystemctl start atd systemctl enable atd -
如果系统负载持续较高,
batch提交的任务可能会延迟较长时间才被执行。 -
使用
batch提交的任务会存储在/var/spool/at目录中,可通过atq查看任务队列。 -
需要具备足够权限,某些用户可能被限制使用
batch,这取决于/etc/at.allow和/etc/at.deny的配置。