V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Nott
V2EX  ›  问与答

求助:如何 kill 掉循环运行的脚本

  •  
  •   Nott · 101 天前 · 1093 次点击
    这是一个创建于 101 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前 Mac 连接蓝牙音响,几分钟不播放声音的话,音响就会关机,于是用这样一个脚本来循环发出一个没有声音的操作:

    #!/bin/bash
    while true; do
      afplay /System/Library/Sounds/Glass.aiff -v 0.01
      sleep 300
    done
    

    然后开机运行,

    最近,换了插线的音响,就想把这个脚本删掉,开机启动项里也删掉了,crontab 里也没有,sh 文件也删掉了,可是他还在后台自动循环,烦人的是,每隔几分钟就弹出来 Music.app ,播放视频还一会儿一暂停。

    ps aux | grep KeepSound.sh 查找出来 PID 还在不断增量变化,

    特来求助,如何干掉这个脚本?

    13 条回复    2024-09-13 13:51:43 +08:00
    ysc3839
        1
    ysc3839  
       101 天前 via Android
    重启系统?
    heijiahei
        2
    heijiahei  
       101 天前
    试试循环 pkill ?
    Nott
        3
    Nott  
    OP
       101 天前
    @ysc3839 删掉脚本第一时间就试了,不行
    moudy
        4
    moudy  
       101 天前 via iPhone
    怎么感觉真正运行的脚本你没删掉呢?
    sagaxu
        5
    sagaxu  
       101 天前
    你要 kill 掉这个 bash 进程才能停止循环
    aminobody
        6
    aminobody  
       101 天前
    alexsz
        7
    alexsz  
       101 天前
    @moudy #4 应该是,OP 杀的是 bash 进程 还是 KeepSound.sh 的进程,循环可能是在另一个子 shell 中运行
    Maboroshii
        8
    Maboroshii  
       101 天前
    看脚本的 parent 进程是哪个? pwdx 看下真实路径在哪里, 应该是没被删掉
    NevadaLi
        9
    NevadaLi  
       101 天前
    通过 pid 找到他的父进程,ppid ,看看是哪个父进程触发的。
    kokutou
        10
    kokutou  
       101 天前 via Android
    你不想重启吗。。。
    kenvix
        11
    kenvix  
       101 天前 via Android
    直接 systemctl kill 把整个 slice kill 掉
    Tiande
        12
    Tiande  
       101 天前
    编写一个在 macOS 下循环 kill 所有包含“KeepSound.sh”的进程的脚本。以下是一个简单的 Bash 脚本示例:

    ```bash
    #!/bin/bash

    while true; do
    # 查找包含“KeepSound.sh”的进程并逐个 kill
    for pid in $(pgrep -f KeepSound.sh); do
    kill $pid
    echo "Killed process with PID $pid"
    done

    sleep 1 # 暂停 1 秒后继续下一轮循环
    done
    ```

    你可以将上述脚本保存为一个文件(比如 `kill_keep_sound_processes.sh`),然后在终端中运行该脚本。请确保在运行脚本时具有足够的权限以执行 kill 操作。

    注意:请谨慎使用这个脚本,确保你真的想要终止所有包含“KeepSound.sh”的进程,以免造成意外损失。
    Nott
        13
    Nott  
    OP
       101 天前
    @heijiahei 感谢,pkill -9 KeepSound.sh 干掉了
    也感谢楼上各位的指点
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5585 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 03:38 · PVG 11:38 · LAX 19:38 · JFK 22:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.