You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Fedora上实现Firefox启停时自动运行/停止指定Bash脚本?

基于Bash实现Firefox状态监控并控制脚本运行

1. 可以用Bash实现,以下是示例脚本

创建一个监控脚本(比如firefox_monitor.sh),它会持续检查Firefox的运行状态,自动启停你的bash_script.sh:

#!/bin/bash

# 要控制的目标脚本路径
TARGET_SCRIPT="/path/to/your/bash_script.sh"
# 存储目标脚本PID的临时文件
PID_FILE="/tmp/bash_script.pid"

# 循环监控Firefox状态
while true; do
    # 检查Firefox是否在运行(精准匹配进程名)
    if pgrep -x "firefox" > /dev/null; then
        # 检查目标脚本是否未运行
        if [ ! -f "$PID_FILE" ] || ! kill -0 $(cat "$PID_FILE") 2>/dev/null; then
            # 启动目标脚本并保存PID
            "$TARGET_SCRIPT" &
            echo $! > "$PID_FILE"
            echo "已启动目标脚本,PID: $(cat $PID_FILE)"
        fi
    else
        # Firefox未运行,检查目标脚本是否在运行
        if [ -f "$PID_FILE" ] && kill -0 $(cat "$PID_FILE") 2>/dev/null; then
            # 停止目标脚本
            kill $(cat "$PID_FILE")
            rm "$PID_FILE"
            echo "已停止目标脚本"
        fi
    fi
    # 每2秒检查一次,可按需调整间隔
    sleep 2
done

使用说明:

  • 将/path/to/your/bash_script.sh替换为你实际的脚本路径
  • 给监控脚本添加执行权限:chmod +x firefox_monitor.sh
  • 直接运行监控脚本:./firefox_monitor.sh,后台运行可加&:./firefox_monitor.sh &

2. 不需要设置777权限和crontab

  • 权限方面:不需要给脚本设777(权限过于开放,有安全风险),只需给执行权限即可:chmod +x 脚本名,若脚本需读写特定文件,再按需调整对应权限。
  • crontab方面:crontab是定时任务工具,只能按固定间隔执行检查,无法实时响应Firefox的启停状态,不适合这种持续监控场景。

3. 更可靠的替代方案:Systemd服务

如果需要监控脚本随系统启动自动运行,或更稳定地后台执行,推荐用Fedora自带的systemd配置服务:

步骤1:创建systemd服务文件

创建~/.config/systemd/user/firefox-monitor.service(用户级服务,无需root权限):

[Unit]
Description=Monitor Firefox and control bash_script.sh
After=graphical.target

[Service]
Type=simple
ExecStart=/path/to/your/firefox_monitor.sh
Restart=always
RestartSec=5

[Install]
WantedBy=default.target

步骤2:启用并启动服务

# 重新加载systemd配置
systemctl --user daemon-reload
# 设置开机自启
systemctl --user enable firefox-monitor.service
# 启动服务
systemctl --user start firefox-monitor.service

查看服务状态/日志:

# 查看状态
systemctl --user status firefox-monitor.service
# 实时查看日志
journalctl --user -u firefox-monitor.service -f

内容的提问来源于stack exchange,提问作者CTB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 03:40:04