0


Mac 定时重启 TouchBar 脚本(缓解闪烁问题)

背景

Mac 笔记本 TouchBar 是真的脆啊,合盖使用一段时间就废了,右侧一直闪烁简直亮瞎眼 😂

经过观察,总结出闪烁规律如下:

  • 工作状态:不断操作电脑时,触控栏处于工作状态,几乎不闪烁;
  • 中间状态:停止操作电脑一段时间后,触控栏变暗,闪烁较明显;
  • 闲置状态:停止操作电脑直到熄屏,TouchBar 不再显示内容,却闪烁剧烈;

因此,网上提出一种定时重启 TouchBar,防止其进入休眠的方法,从而规避其闪烁问题。

创建重启 TouchBar 脚本

打开 「脚本编辑器」,编写重启 TouchBar 脚本

set idleTime to (do shell script "ioreg -c IOHIDSystem | awk '/HIDIdleTime/ {print $NF; exit}'") as integer

if idleTime is greater than 4.5E+10 thendo shell script "pkill TouchBarServer" user name "USERNAME" password "PASSWORD" with administrator privileges
end if

上述代码,首先获取电脑闲置的时间,如果超过 45 秒,则重启 TouchBar。

注意,需要替换

USERNME

你电脑的用户名

PASSWORD

你电脑的密码

在这里插入图片描述
点击「文件」=>「导出」,将上述代码导出为脚本,存储路径可以放到任意位置,例如 /Users/

xxx

/TouchBar/TouchBar.scpt,其中

xxx

为你的用户名。

创建定时任务

打开 Terminal 终端命令行,执行如下代码:

进入任务脚本目录

cd /Library/LaunchDaemons

创建配置文件

sudovi my.touchbar.cron.plist

贴入如下内容

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN""http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><dict><key>Label</key><string>my.touchbar.cron.plist</string><key>ProgramArguments</key><array><string>osascript</string><!-- 下面的 string 是创建的脚本的带名字的路径 --><string>/Users/xxx/TouchBar/TouchBar.scpt</string></array><!-- 运行间隔,与StartCalenderInterval使用其一,单位为秒 --><!-- 如果是弹出窗口点击是或取消,计时器会从你点击之后开始计时 --><key>StartInterval</key><integer>30</integer><!-- 标准输入文件 --><key>StandardInPath</key><string>/Users/xxx/TouchBar/log/run-in-drink.log</string><!-- 标准输出文件 --><key>StandardOutPath</key><string>/Users/xxx/TouchBar/log/run-out-drink.log</string><!-- 标准错误输出文件 --><key>StandardErrorPath</key><string>/Users/xxx/TouchBar/log/run-err-drink.log</string></dict></plist>

大概意思就是每 30 秒执行一次 /Users/

xxx

/TouchBar/TouchBar.scpt

执行如下命令,加载定时任务

launchctl load my.touchbar.cron.plist

检查任务是否已成功加载(以下命令显示出 my.touchbar.cron.plist 即证明加载成功)

launchctl list |grep touchbar

如果需要停止定时任务,可以通过如下命令卸载

launchctl unload my.touchbar.cron.plist
标签: macos

本文转载自: https://blog.csdn.net/shida_csdn/article/details/132005255
版权归原作者 shida_csdn 所有, 如有侵权,请联系我们删除。

“Mac 定时重启 TouchBar 脚本(缓解闪烁问题)”的评论:

还没有评论