可以在MacOS上的“默认写入”命令行中配置菜单栏吗?


17

我真的很想使用脚本通过使用默认值在macOS High Sierra上启用这些功能。我知道如何在.bash_profile中创建脚本,因为我将为此使用一个函数,然后在终端中运行该函数。但是,我缺少的是启用以下功能的实际字符串:

  • 显示蓝牙图标
  • 显示音量图标
  • 显示电池电量百分比
  • 显示完整日期

是否可以使用“默认值”以编程方式设置这些设置,并且在10.6-10.13之间进行了很大的更改吗?

好的,根据IconDeamon在本文的评论部分中所说的,我能够进行编辑,~/Library/Preferences/com.apple.systemuiserver.plist并且能够看到已启用的菜单列表。

但是,这并不一定将我带到我想去的地方。理想情况下,最好找到一个列表并能够解决此问题。我的意思是,好的,现在,感谢这个论坛的帮助,我知道我想展示的是:

/System/Library/CoreServices/Menu Extras/Script Menu.menu

/System/Library/CoreServices/Menu Extras/RemoteDesktop.menu

/System/Library/CoreServices/Menu Extras/Bluetooth.menu

/System/Library/CoreServices/Menu Extras/TimeMachine.menu

/System/Library/CoreServices/Menu Extras/AirPort.menu

/System/Library/CoreServices/Menu Extras/TextInput.menu

/System/Library/CoreServices/Menu Extras/Battery.menu

/System/Library/CoreServices/Menu Extras/Volume.menu

/System/Library/CoreServices/Menu Extras/Clock.menu

并且菜单的末尾可以有a _5或a _3表示应该去的地方。但..?这不是我可以编辑的用户可写文本文件。


我假设您知道如何设置bash并为此编写脚本,并正在寻找特定版本的macOS的密钥(或有人在记录中说-不,您不能这样做)。
bmike

是的 我正在运行osx el capitan,但是我希望仅在(我的函数名在.bash_profile中)键入“ defaults”的机器将是一个很高的选择。
esaruoho

1
看看~/Library/Preferences/com.apple.systemuiserver.plist
IconDaemon

谢谢@IconDaemon-现在我有一个倾向于使用的清单。但我不确定如何使用此信息在全新计算机上进行书写。同样,Battery.menu似乎不会自动指定百分比。
esaruoho

以下命令将显示电池百分比:defaults write com.apple.menuextra.battery ShowPercent YES; killall SystemUIServer
user3439894

Answers:


12

defaults write命令将启用几个菜单栏图标,包括蓝牙。

defaults write com.apple.systemuiserver menuExtras -array "/System/Library/CoreServices/Menu Extras/AirPort.menu" "/System/Library/CoreServices/Menu Extras/Bluetooth.menu" "/System/Library/CoreServices/Menu Extras/Clock.menu" "/System/Library/CoreServices/Menu Extras/Displays.menu" "/System/Library/CoreServices/Menu Extras/Volume.menu"

在重新启动SystemUIServer之前,更改将不会生效
killall SystemUIServer

如果要启用其他项目,请查找~/Library/Preferences/com.apple.systemuiserver.plist以查找要查找的其他菜单的特定名称。

注意:如果您尝试启用计算机上没有的其他菜单,该命令将陷入无限循环。Eject.menu例如,某些用户可能没有。


我得到了一个无休止的循环,即2018-09-25 00:31:35.052默认值[48638:10853265] Rep参数不是字典默认值未更改。2018-09-25 00:31:35.973默认值[48677:10853403] Rep参数不是字典默认值未更改。2018-09-25 00:31:36.892默认值[48715:10853535] Rep参数不是字典默认值未更改。2018-09-25 00:31:37.807默认值[48753:10853666] Rep参数不是字典默认值未更改。使用macOS High Sierra。我究竟做错了什么?
esaruoho

2
@esaruoho该命令必须为一行-如果其中包含多余的回车符或空白行,则可能会引起类似您提到的问题。
韦德·威廉姆斯

我确实将其粘贴为一行,并得到了这些错误。
esaruoho

2
嗨,删除Eject之后,我可以使它们全部工作。Eject.menu正在创建这个无休止的循环:)
esaruoho

对我来说,运行killall后,“时钟”项将始终以默认值重新出现
felixfbecker
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.