You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何通过Shell脚本在Windows 10中定时触发「仅闹钟」专注模式?

如何通过Shell脚本在Windows 10中定时触发「仅闹钟」专注模式?

嗨,我刚好折腾过这个需求,其实完全可以实现,而且配置起来没你想象的那么麻烦!下面分两步给你讲清楚怎么操作:

第一步:写个PowerShell脚本触发「仅闹钟」模式

Windows的专注助手(也就是你说的「仅闹钟」模式)可以通过修改注册表快速切换,我们用PowerShell来实现这个操作:

  1. 打开记事本,把下面的代码复制进去:
# 设置「仅闹钟」模式(值2对应仅闹钟,0是关闭,1是仅优先级)
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\FocusAssist\Configuration" -Name "FocusAssistMode" -Value 2

# 强制系统刷新设置(可选,确保立即生效)
$null = [Windows.UI.Notifications.ToastNotificationManager]::CreateToastNotifier().Show([Windows.UI.Notifications.ToastNotification]::new([Windows.Data.Xml.Dom.XmlDocument]::new()))
  1. 保存文件,命名为EnableFocusAssistAlarmsOnly.ps1,比如存到C:\Scripts文件夹里(如果没有这个文件夹就新建一个)。

第二步:用任务计划程序设置定时触发

接下来要让这个脚本每天按你想要的间隔自动运行,Windows自带的任务计划程序就能搞定:

  • 按下Win+R,输入taskschd.msc打开任务计划程序。
  • 点击右侧的「创建基本任务」,跟着向导走:
    1. 给任务起个名字,比如「定时触发仅闹钟专注模式」,然后点下一步。
    2. 触发器选「每天」,设置你想要的开始时间,然后点下一步。
    3. 选择「重复任务间隔」,比如你想每2小时触发一次,就选2小时,持续时间选「24小时」,然后点下一步。
    4. 操作选「启动程序」,然后点下一步。
    5. 程序或脚本里填powershell.exe,添加参数里填-ExecutionPolicy Bypass -File "C:\Scripts\EnableFocusAssistAlarmsOnly.ps1"(注意替换成你实际的脚本路径),然后点下一步。
    6. 最后勾选「当单击完成时,打开此任务属性的对话框」,点完成。
  • 在属性对话框里,切换到「设置」标签,勾选「如果任务失败,每隔X分钟重试」(可选,确保稳定性),然后确定就大功告成了!

如果之后想要关闭这个模式,你可以写另一个脚本把Value改成0,同样用任务计划程序定时触发就行。

备注:内容来源于stack exchange,提问作者Yedya

火山引擎 最新活动