Mac怎么在终端管理Mac系统的开机启动

老枫同学_5897

老枫同学_5897

2026-07-15

607人浏览

原创

终端精准管理mac用户级开机启动项需四步:一、用launchctl print user/$(id -u)筛选登录项;二、用osascript增删登录项(名称须完全匹配);三、手动编写plist文件(路径须指向.app内可执行文件,加-w加载);四、launchctl unload -w卸载或rm删除残留文件后,bootout+bootstrap强制重载生效。

mac怎么在终端管理mac系统的开机启动

用终端命令增删用户级开机启动项

想通过命令行精准控制Mac登录时自动启动哪些程序,避免图形界面误操作或第三方软件偷偷注册,就得直接操作launchd的用户代理配置。这方法不依赖系统设置界面刷新,改完立刻生效,适合批量处理或脚本化运维。

第一步:打开“终端”应用(可在“访达→应用程序→实用工具”中找到,或用Spotlight搜索)。

第二步:查看当前用户所有已注册的登录项,运行以下命令:
【launchctl list | grep gui】会混杂系统进程,更准的是:
launchctl print user/$(id -u) | grep -A 5 -B 5 "LaunchAtLogin" —— 这能筛出真正标记为登录启动的应用代理。

第三步:若要添加一个App为开机启动项,必须先确认它已安装在/Applications目录下,例如Chrome:
launchctl load -w ~/Library/LaunchAgents/com.google.Chrome.plist —— 但Chrome本身不自带plist,需手动创建。正确做法是用osascript触发系统API注册:
osascript -e 'tell application "System Events" to make login item at end with properties {name:"Google Chrome",path:"/Applications/Google Chrome.app",hidden:false}'

第四步:删除某项登录启动,例如移除WPS:
osascript -e 'tell application "System Events" to delete login item "WPS Office"' —— 注意名称必须与登录项列表中显示的**完全一致**,大小写、空格、标点都不能错,否则命令静默失败。

手动编辑LaunchAgents配置文件(高级控制)

当需要隐藏启动、延迟启动或传递特定参数时,图形界面和AppleScript都做不到,只能自己写plist文件。这一步绕过所有GUI层,直写底层配置,但写错会导致启动项失效甚至报错。

在访达中按Cmd+Shift+G,输入~/Library/LaunchAgents/,回车进入该文件夹。

新建一个文本文件,命名为my.startup.slack.plist(名称必须以.plist结尾,且不能含空格),用文本编辑器粘贴以下内容:

合同嗖嗖
合同嗖嗖

合同嗖嗖是一款AI法律服务工具,专业的AI法律合同生成工具。

下载

<?xml version="1.0" encoding="UTF-8"?><br><br><plist version="1.0"><br><dict><br>  <key>Label</key><br>  <string>my.startup.slack</string><br>  <key>ProgramArguments</key><br>  <array><br>    <string>/Applications/Slack.app/Contents/MacOS/Slack</string><br>  </array><br>  <key>RunAtLoad</key><br>  <true></true><br>  <key>Hide</key><br>  <true></true><br></dict><br></plist>

【保存前务必检查:标签内的路径必须指向.app包内真实的可执行文件,不是.app本身】比如Slack是/Applications/Slack.app/Contents/MacOS/Slack,而Chrome是/Applications/Google Chrome.app/Contents/MacOS/Google Chrome,路径错一个字符就无法启动。

保存后,在终端中执行:
launchctl load -w ~/Library/LaunchAgents/my.startup.slack.plist —— 【-w 参数必须加,否则下次重启失效】

卸载并彻底清除残留启动项

有些软件卸载不干净,会在LaunchAgents里留下僵尸plist文件,即使没启用也会被launchctl扫描到,造成日志污染或启动冲突。

方法一:用launchctl卸载并禁用
先查出对应plist名:
ls ~/Library/LaunchAgents/ | grep -i "baidunetdisk\|todesk\|feishu"
再逐个卸载:
launchctl unload -w ~/Library/LaunchAgents/com.baidu.NetDisk.plist

方法二:直接删除文件(更彻底)
确认无误后,执行:
rm ~/Library/LaunchAgents/com.baidu.NetDisk.plist
注意:删除后不会自动从launchctl缓存中清除,需配合launchctl remove com.baidu.NetDisk才能清空内存状态。

最后一步:强制重载用户代理列表,让改动立即生效:
launchctl bootout gui/$(id -u) → 然后立刻执行 launchctl bootstrap gui/$(id -u)

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

2026.10.22

0

15

PHP2Shell高危漏洞修复教程
PHP2Shell高危漏洞修复教程

PHP2Shell漏洞是什么,哪些PHP版本和运行环境会受到影响,服务器应该如何检测与修复?本专题提供版本自查脚本、Linux与Docker升级命令、PHP-FPM和Apache排查步骤,以及修复验证、临时缓解和应急响应方案。

2026.10.22

0

12

剧云人物设定与关系管理教程
剧云人物设定与关系管理教程

本专题介绍剧云人物设定与关系管理,讲解角色小传、性格职业、人物目标、背景资料和关系网络的创建及维护方法。

2026.10.22

0

16

剧云故事大纲与分场规划教程
剧云故事大纲与分场规划教程

本专题讲解剧云梗概与多级大纲功能,覆盖全局、分集、分场结构生成,以及主线冲突、剧情节点和场次顺序调整。

2026.10.22

0

15

VibeKnow PPT讲解视频教程汇总
VibeKnow PPT讲解视频教程汇总

本专题介绍VibeKnow PPT讲解模式的素材准备、旁白生成、页面节奏、画面呈现与导出设置,适合课程和培训场景。

2026.10.22

0

16

VibeKnow PDF转视频教程合集
VibeKnow PDF转视频教程合集

本专题围绕VibeKnow的PDF转视频功能,讲解文件准备、内容解析、脚本生成、重点可视化及配音字幕检查方法。

2026.10.22

0

12

二狗PPT模板与视觉设计
二狗PPT模板与视觉设计

本专题介绍二狗PPT的职场模板、主题风格与页面版式,覆盖模板切换、色彩选择、内容匹配和正式汇报场景下的视觉优化方法。

2026.10.22

0

13

php漏洞修复方法
php漏洞修复方法

PHP漏洞聚合专题,持续整理PHP最新高危漏洞、CVE安全预警、受影响版本、自查命令及修复方案,覆盖PHP-FPM、Docker、Ubuntu与Linux服务器环境,帮助开发者快速完成漏洞排查、版本升级和安全加固。

2026.10.22

20

31

二狗PPT入门与基础操作
二狗PPT入门与基础操作

本专题整理二狗PPT从官网进入、输入主题、生成大纲到制作成稿的基础操作,帮助新手掌握AI一键生成职场PPT的完整流程。

2026.10.22

0

14

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
安装 Xdebug 并配置 phpstorm
安装 Xdebug 并配置 phpstorm

共1课时 | 187人学习

PostgreSQL 教程
PostgreSQL 教程

共48课时 | 20.6万人学习

好课诞生记
好课诞生记

共20课时 | 7.2万人学习