mac菜单栏实时显示运行天数可用istat menus实现,它读取内核级uptime数据,支持自定义格式如“d天”;免费方案需bartender+platypus+shell脚本,但需手动刷新;automator可创建一键查看服务,点击弹窗显示精确天数。

你想让Mac菜单栏实时显示自开机以来已运行的天数,方便一眼掌握系统连续运行时长,避免因长期未重启导致性能下降或内存泄漏——这个需求不需要安装任何第三方软件,仅用系统自带工具就能实现。
用 iStat Menus 实现菜单栏实时显示运行天数
这是目前唯一能将“运行天数”直接、稳定、高精度地显示在菜单栏的成熟方案。它读取的是内核级 uptime 数据,不是估算值,且支持自定义格式(例如只显示“12d”或“12天3小时”)。
方法一:下载安装 iStat Menus
访问官网 https://bjango.com/mac/istatmenus/ → 下载最新版 DMG 文件 → 双击挂载 → 将 iStat Menus 拖入“应用程序”文件夹 → 双击启动。
方法二:首次运行时会弹出权限提示,必须勾选【在菜单栏中显示】并点击【打开】;随后系统会要求授予辅助功能权限,点【打开系统设置→隐私与安全性→辅助功能→勾选 iStat Menus】,否则图标不显示。
方法三:打开 iStat Menus 设置 → 左侧选择【System】→ 右侧找到【Uptime】→ 开启开关 → 点击右侧【Configure】→ 在“Display format”中输入 【d天h小时】 或精简为 【d天】 → 关闭设置窗口。
iStat Menus 会在菜单栏最右侧生成一个动态刷新的图标,内容即为当前运行天数与小时数,每分钟自动更新一次。它不依赖网络,不上传数据,所有计算均在本地完成。
用 Bartender 配合终端脚本间接实现
如果你拒绝付费软件,又希望菜单栏有类似效果,可用免费工具 Bartender + 自定义 shell 脚本组合实现。该方案本质是把 uptime 命令结果“伪装”成菜单栏项,但需手动刷新且无法秒级更新。
第一步:安装 Bartender(免费版足够)
从 https://www.macbartender.com/ 下载 Bartender 4 Free → 安装后首次启动会引导开启辅助功能权限 → 同样需进入【系统设置→隐私与安全性→辅助功能】中启用。
第二步:创建 uptime 刷新脚本
打开“终端”,执行:nano ~/uptime_menu.sh → 输入以下三行内容:
#!/bin/bash
uptime | awk '{print $3 " " $4}' | sed 's/,//'
exit 0
按 Control+O 回车保存 → Control+X 退出 → 再执行:chmod +x ~/uptime_menu.sh。
第三步:用 Platypus 将脚本转为菜单栏应用
下载 Platypus(https://sveinbjorn.org/platypus)→ 安装后启动 → “Script File”选中刚才保存的 uptime_menu.sh → “Interface”选【Menu Bar Application】→ “Name”填“Uptime” → 点击【Create】→ 生成的应用拖入“应用程序”文件夹。
第四步:启动该应用,并用 Bartender 将其图标固定到菜单栏左侧可见区。注意:【该脚本不会自动刷新,每次点击图标才重新执行一次 uptime】,所以显示的是点击瞬间的运行时长,不是实时滚动值。
用 Automator 创建一键查看快捷方式
不追求常驻菜单栏,但希望单击即得精确天数?Automator 可生成一个菜单栏快捷图标,点击后弹出当前运行天数对话框,零学习成本,纯系统原生。
打开“访达→应用程序→实用工具”,双击“Automator”。
新建文稿 → 选择“快速操作” → 点击“文件→另存为”,命名为“查运行天数” → 保存位置选“~/Library/Services/”(自动补全路径)。
左侧搜索栏输入“运行 Shell 脚本”,将其拖入右侧工作流区域 → 在脚本框中粘贴:uptime | awk '{print "已运行: " $3 " " $4}' | sed 's/,//' → 保存。
现在按下 Command + 空格 打开聚焦搜索 → 输入“查运行天数” → 回车执行 → 弹窗立即显示类似“已运行: 23天 5:17”的结果。这个动作也可绑定到 Touch Bar 或设置为快捷键(系统设置→键盘→快捷键→服务)。











