菜鸟科技网

Bartender命令行如何高效管理?

bartender 是一个功能强大的命令行工具,主要用于管理和自动化你的菜单栏,如果你经常需要手动拖拽、排列 macOS 菜单栏上的图标,或者想让菜单栏更整洁、更自动化,bartender 就是你需要的利器。

Bartender命令行如何高效管理?-图1
(图片来源网络,侵删)

什么是 Bartender CLI?

bartender 是一个由 MacPaw(著名的开发商,也是 CleanMyMac X 的开发商)开发的命令行界面工具,用于控制其图形界面应用 Bartender 5

它让你可以通过编写脚本或使用终端命令,来精确控制 Bartender 的各种功能,

  • 显示/隐藏特定的菜单栏图标。
  • 重新排列菜单栏图标的顺序。
  • 在特定时间或条件下自动执行操作。
  • 将复杂的操作封装成一键执行的脚本。

重要前提: 你必须在你的 Mac 上已经安装并购买了 Bartender 5 的正版许可,CLI 工具本身是包含在 Bartender 安装包里的,你无需单独下载。


如何安装和启用 Bartender CLI?

步骤 1:安装 Bartender 5

如果你还没有安装,请从 MacPaw 官网购买并安装 Bartender 5。

Bartender命令行如何高效管理?-图2
(图片来源网络,侵删)

步骤 2:找到并启动 CLI 工具

CLI 工具位于 Bartender 的应用程序包内部。

  1. 打开“访达”(Finder)。
  2. 进入“应用程序”文件夹。
  3. 找到并右键点击 Bartender 5.app,选择“显示包内容”(Show Package Contents)。
  4. 在打开的文件夹中,导航到 Contents/MacOS/ 目录。
  5. 你会看到一个名为 bartender-cli 的文件,这就是我们要用的命令行工具。

步骤 3:为命令行工具创建别名(推荐)

每次都输入完整路径太麻烦了,我们可以为它创建一个简短的别名,方便在任何终端中使用。

打开你的终端(Terminal),然后输入以下命令:

# 将 bartender-cli 的路径添加到你的 shell 配置文件中
# 如果你使用的是 zsh (macOS Catalina 及以后版本默认)
echo 'alias bartender="/Applications/Bartender 5.app/Contents/MacOS/bartender-cli"' >> ~/.zshrc
# 如果你使用的是 bash
# echo 'alias bartender="/Applications/Bartender 5.app/Contents/MacOS/bartender-cli"' >> ~/.bash_profile

为了让配置生效,运行:

Bartender命令行如何高效管理?-图3
(图片来源网络,侵删)
source ~/.zshrc
# 或者对于 bash
# source ~/.bash_profile

你就可以在终端中直接输入 bartender 来使用这个工具了。

步骤 4:检查 CLI 是否正常工作

在终端中输入以下命令:

bartender --version

Bartender 正在运行,你应该能看到类似下面的输出,显示其版本号。


常用命令和示例

在继续之前,你需要知道 Bartender 中的“元素”指的是什么,每个菜单栏图标(如 Wi-Fi、电池、Dropbox 等)在 Bartender 中都被视为一个“元素”,你需要知道你想要控制的元素的名称。

基本命令结构

bartender <command> <options>

命令详解

列出所有可用的元素 这是最常用的命令,用来查看 Bartender 能识别到的所有菜单栏项目及其名称。

bartender list

输出示例:

Element: Wi-Fi
Element: Battery
Element: Clock
Element: Spotlight
Element: MenuMeters
...

注意: 你需要在这里记下或复制你想要操作的元素的准确名称(包括大小写)。

显示或隐藏特定元素 这是最核心的功能。

  • 显示一个元素("Wi-Fi"):
    bartender show "Wi-Fi"
  • 隐藏一个元素("Battery"):
    bartender hide "Battery"
  • 切换元素的显示状态(如果显示则隐藏,如果隐藏则显示):
    bartender toggle "Clock"

重新排列菜单栏图标 你可以通过 bartender reorder 命令来改变图标的顺序,这个功能非常强大,可以实现完全自动化的菜单栏布局。

  • 按指定顺序重新排列: 你需要提供一个元素名称的列表,用空格隔开,这个列表就是新的从左到右的顺序。
    # 将 Wi-Fi 放在最左边,然后是 Clock,最后是 Spotlight
    bartender reorder "Wi-Fi" "Clock" "Spotlight"
    • 重要提示:这个命令会完全覆盖你当前的菜单栏顺序,Bartender 中没有显示的元素不会出现在这个列表里,建议先 bartender list 查看所有元素,然后只排列你想要显示的元素。

控制整个菜单栏

  • 隐藏所有菜单栏图标(只显示 Bartender 的自定义菜单栏):
    bartender hide all
  • 显示所有菜单栏图标
    bartender show all

实用场景与自动化脚本

Bartender CLI 的真正威力在于与 macOS 的自动化工具结合使用。

根据电源状态切换布局

假设你使用笔记本电脑,你希望:

  • 接通电源时:显示所有图标,包括电池。
  • 使用电池时:隐藏电池图标,让菜单栏更简洁。

你可以使用 pmset 命令来检测电源状态,并结合 bartender

  1. 创建一个脚本,例如命名为 bartender-power.sh

    #!/bin/bash
    # 获取当前电源状态
    # AC attached: 1, Battery: 0
    POWER_STATE=$(pmset -g batt | grep "Battery Power" | wc -l)
    if [ "$POWER_STATE" -eq 0 ]; then
      # 接通电源,显示所有
      echo "Power adapter connected. Showing all items."
      bartender show all
    else
      # 使用电池,隐藏电池
      echo "On battery. Hiding Battery icon."
      bartender hide "Battery"
    fi
  2. 给脚本添加执行权限

    chmod +x bartender-power.sh
  3. 设置自动化

    • 使用 Automator(自动操作)

      1. 打开 Automator,创建一个新的“快速操作”。 2 在搜索框中找到“运行 Shell 脚本”,并将其拖到右侧工作区。
      2. 将上面的脚本内容粘贴进去,并将 bartender 替换为脚本的完整路径(如 ./bartender-power.sh)。
      3. 保存,比如命名为 "Toggle Bartender for Power"。
      4. 你可以通过 Spotlight 或 Alfred 快速运行这个操作。
    • 使用第三方工具(如 yabaiHammerspoon 这些窗口管理工具通常支持在特定事件(如电源状态改变)时触发脚本。

一键切换“工作模式”和“休闲模式”

创建两个脚本,一个用于工作,一个用于休闲。

work-mode.sh (工作模式 - 显示所有专业工具)

#!/bin/bash
bartender reorder "Slack" "Zoom" "Wi-Fi" "Clock" "VPN"

leisure-mode.sh (休闲模式 - 只显示系统图标)

#!/bin/bash
bartender reorder "Wi-Fi" "Battery" "Clock"
bartender hide "Slack"
bartender hide "Zoom"
bartender hide "VPN"

然后你可以将这两个脚本绑定到快捷键上,实现一键切换。


注意事项和故障排除

  1. Bartender 必须运行:所有 bartender-cli 命令都要求 Bartender 5 的图形界面应用正在运行,Bartender 关闭了,CLI 命令将无效。
  2. 元素名称是关键bartender list 输出的名称是唯一的,必须完全匹配(包括空格和大小写),如果命令不生效,请首先检查名称是否正确。
  3. 权限问题:确保你的终端有足够的权限执行这些命令,如果你遇到权限错误,可以尝试在命令前加上 sudo,但这通常是不必要的。
  4. 脚本路径:在脚本中调用 bartender 时,确保使用了正确的路径,或者你已经成功设置了别名。

bartender 命令行工具是 Bartender 5 的高级功能,它将菜单栏管理从手动拖拽提升到了自动化和脚本化的新高度,对于追求效率和高度定制化的 macOS 这是一个非常强大且灵活的工具,花点时间熟悉 listshow/hide/reorder 命令,你就能创造出完全符合你工作流和喜好的菜单栏布局。

分享:
扫描分享到社交APP
上一篇
下一篇