Ubuntu Trigger管理多个触发器的步骤
在终端中执行以下命令,更新包列表并安装Ubuntu Trigger:
sudo apt update
sudo apt install ubuntu-trigger
通过ubuntu-trigger create
命令创建多个触发器,每个触发器需指定唯一名称、执行命令及触发规则(时间/事件)。示例如下:
ubuntu-trigger create --name "DailyBackup" --command "/path/to/backup.sh" --every "0 2 * * *"
ubuntu-trigger create --name "StartupCleanup" --command "/path/to/cleanup.sh" --on "startup"
ubuntu-trigger create --name "HourlyLogRotate" --command "/path/to/logrotate.sh" --every "0 * * * *"
注:
--name
需唯一标识触发器;--command
指向需执行的脚本(需提前赋予可执行权限:chmod +x /path/to/script.sh
);--every
用于设置时间规则(支持cron语法);--on
用于指定系统事件(如"startup"“shutdown”)。
使用ubuntu-trigger list
命令列出所有已创建的触发器,显示名称、状态、触发规则等基本信息:
ubuntu-trigger list
输出示例:
Name Status Every On Command
--------------- ------- -------------- --------- -------------------------------
DailyBackup Active 0 2 * * * /path/to/backup.sh
StartupCleanup Active startup /path/to/cleanup.sh
HourlyLogRotate Active 0 * * * * /path/to/logrotate.sh
若需调整触发器的名称、命令或触发规则,使用ubuntu-trigger edit
命令进入交互式编辑界面:
ubuntu-trigger edit "DailyBackup"
在编辑界面中,可修改以下内容:
若不再需要某个触发器,使用ubuntu-trigger delete
命令删除,避免不必要的资源占用:
ubuntu-trigger delete "HourlyLogRotate"
执行后,系统会提示确认删除,输入y
即可完成删除。
使用ubuntu-trigger status
命令查看指定触发器的执行详情,如最近执行时间、状态(成功/失败)等:
ubuntu-trigger status "DailyBackup"
输出示例:
Name: DailyBackup
Status: Active
Last Execution: 2025-09-26 02:00:00 (Success)
Next Execution: 2025-09-27 02:00:00
Command: /path/to/backup.sh
PATH
),需在脚本中显式设置,避免因环境差异导致执行失败;>> /var/log/trigger.log 2>&1
),便于后续排查问题。