在Mac终端中终止后台进程需先用ps或pgrep定位PID,再用kill、killall、pkill等命令终止:ps -axu列进程,grep筛选;kill发送SIGTERM/SIGKILL;killall按名终止;pkill支持模糊匹配;pgrep精准查PID后组合kill使用。

如果您在Mac上需要通过终端查看并终止后台运行的进程,则需结合ps命令定位进程、kill命令发送终止信号。以下是具体操作步骤:
一、使用ps命令列出并筛选进程
ps命令用于获取当前系统中进程的静态快照,配合不同选项可显示全部进程、按用户过滤或匹配关键词,是定位目标进程的前提。
1、打开“应用程序” → “实用工具” → “终端”,或按Command + 空格键启动聚焦搜索,输入“终端”后回车。
2、执行ps -axu命令,显示所有用户的所有进程,包含PID、CPU占用、内存、启动命令等完整字段。
3、若需查找特定程序(如“Zoom”),执行ps -axu | grep -i "zoom",其中-i参数使匹配忽略大小写。
4、为排除grep自身进程行,可追加-v grep:执行ps -axu | grep -i "zoom" | grep -v grep。
5、若输出过长不便浏览,可添加| less分页查看:例如ps -axu | less,按空格翻页,按q退出。
二、使用kill命令通过PID终止进程
kill命令向指定PID发送信号,默认为SIGTERM(15号信号),允许进程执行清理逻辑后退出;若进程无响应,则需使用SIGKILL(9号信号)强制终止。
1、从ps命令输出中识别目标进程所在行,其第二列数字即为PID(例如user 28471 0.3 1.8 ...,则PID为28471)。
2、输入kill 28471(将28471替换为实际PID),尝试优雅终止。
3、若进程未退出,执行kill -9 28471发送SIGKILL信号,立即强制终止且不执行任何清理。
4、验证是否成功:再次运行ps -axu | grep -i "程序名",若无输出则表示进程已结束。
三、使用killall命令按名称批量终止进程
killall命令无需手动查找PID,直接依据进程名称匹配并终止所有同名实例,适用于快速关闭全部运行中的同类程序。
1、在终端中输入killall "Google Chrome"(注意名称须与ps输出中CMD列显示的进程名完全一致,包括空格与大小写)。
2、若提示No process found,说明当前无该名称的活跃进程,或名称存在偏差(如实际为“Google Chrome Helper”)。
3、若普通killall未生效,改用强制模式:killall -9 "WeChat",立即终止所有匹配进程。
4、可先用ps -axu | grep -i "wechat"确认进程名真实形式,再调整killall参数。
四、使用pkill命令按模式灵活匹配并终止
pkill支持模糊匹配、全命令行检索及用户限定,适合处理名称不标准、含路径或参数的复杂进程场景。
1、执行pkill -f "python3 server.py",-f参数使其匹配整个启动命令而非仅进程名,可精准终止带参数的脚本进程。
2、若需忽略大小写匹配浏览器进程,输入pkill -i "chrome",可同时终止Chrome、chrome、CHROME等变体。
3、对匹配结果强制终止:执行pkill -9 -f "node.*app.js",-9与-f组合确保立即杀灭符合正则模式的进程。
4、若仅想终止当前用户下的某类进程,添加-u参数:pkill -u $USER -f "backup.sh"。
五、使用pgrep辅助快速获取PID再组合kill
pgrep命令专用于按条件检索进程ID,不显示冗余信息,常与kill连用构成简洁终止流程,避免人工识别错误。
1、在终端中输入pgrep -f "zoom.us",返回匹配进程的PID列表(如28471 28475),每行一个数字。
2、将pgrep结果直接传递给kill:执行kill $(pgrep -f "zoom.us"),$()实现命令替换,自动向所有匹配PID发送SIGTERM。
3、若需强制终止,改用kill -9 $(pgrep -f "zoom.us")。
4、限制仅当前用户进程:输入pgrep -u $USER -f "slack",再组合kill使用。

















