本文目录导读:

我来帮你创建一个自动设置护眼模式的脚本,这里提供Windows和macOS两个版本:
Windows版本(PowerShell脚本)
# 自动护眼模式切换脚本
# 支持Windows 10/11
# 设置默认时间(可修改)
$DayStartTime = "08:00" # 日间模式开始时间
$NightStartTime = "18:00" # 夜间模式开始时间
# 定义注册表路径
$RegistryPath = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Themes\Personalize"
# 创建计划任务函数
function Set-ScheduleTask {
param(
[string]$TaskName,
[string]$Time,
[string]$Mode
)
# 创建计划任务动作
$Action = New-ScheduledTaskAction -Execute "powershell.exe" `
-Argument "-WindowStyle Hidden -Command `"Set-ItemProperty -Path '$RegistryPath' -Name 'AppsUseLightTheme' -Value $Mode`""
# 创建计划任务触发器
$Trigger = New-ScheduledTaskTrigger -Daily -At $Time
# 注册计划任务
Register-ScheduledTask -TaskName $TaskName -Action $Action -Trigger $Trigger -Force
Write-Host "计划任务 $TaskName 已创建,将在 $Time 执行" -ForegroundColor Green
}
# 获取管理员权限
if (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) {
Start-Process PowerShell -Verb RunAs "-NoProfile -ExecutionPolicy Bypass -File `"$PSCommandPath`""
exit
}
Write-Host "开始创建护眼模式计划任务..." -ForegroundColor Cyan
# 创建日间模式任务(浅色)
Set-ScheduleTask -TaskName "DayMode" -Time $DayStartTime -Mode 1
# 创建夜间模式任务(深色)
Set-ScheduleTask -TaskName "NightMode" -Time $NightStartTime -Mode 0
Write-Host "`n护眼模式自动切换已完成配置!" -ForegroundColor Green
Write-Host "日间模式 ($DayStartTime): 浅色主题" -ForegroundColor Yellow
Write-Host "夜间模式 ($NightStartTime): 深色主题" -ForegroundColor Yellow
# 可选:立即切换到夜间模式
Write-Host "`n是否立即切换到夜间模式?(Y/N)" -NoNewline
$response = Read-Host
if ($response -eq 'Y') {
Set-ItemProperty -Path $RegistryPath -Name 'AppsUseLightTheme' -Value 0
Write-Host "已切换到夜间模式" -ForegroundColor Green
}
Windows版本(Python脚本)
import time
import schedule
import subprocess
import sys
import os
class EyeComfortManager:
def __init__(self):
self.day_start = 8 # 早上8点
self.night_start = 18 # 晚上6点
def set_windows_theme(self, is_light):
"""设置Windows主题模式"""
import winreg
try:
# 打开注册表项
key = winreg.OpenKey(
winreg.HKEY_CURRENT_USER,
r"Software\Microsoft\Windows\CurrentVersion\Themes\Personalize",
0, winreg.KEY_WRITE
)
# 设置系统主题
winreg.SetValueEx(key, "SystemUsesLightTheme", 0, winreg.REG_DWORD, 1 if is_light else 0)
# 设置应用主题
winreg.SetValueEx(key, "AppsUseLightTheme", 0, winreg.REG_DWORD, 1 if is_light else 0)
winreg.CloseKey(key)
print(f"{'日间' if is_light else '夜间'}模式已启动")
except Exception as e:
print(f"Error setting theme: {e}")
def enable_night_light(self):
"""启用Windows夜间模式"""
try:
# 使用Windows设置API(需要Windows 10 1709+)
subprocess.run(['powershell', '-Command',
'Set-ItemProperty -Path "HKCU:\\Software\\Microsoft\\Windows\\CurrentVersion\\CloudStore\\Store\\DefaultAccount\\Current\\default$windows.data.bluelightreduction.bluelightreductionstate" -Name "Data" -Value "AQAHBOQBAAAAAAAAAAQAAAA=" -Type Binary'])
print("夜间模式已启用")
except Exception as e:
print(f"Error enabling night light: {e}")
def day_mode(self):
"""切换到日间模式"""
self.set_windows_theme(True)
print(f"[{time.strftime('%H:%M')}] 切换到日间模式")
def night_mode(self):
"""切换到夜间模式"""
self.set_windows_theme(False)
self.enable_night_light()
print(f"[{time.strftime('%H:%M')}] 切换到夜间模式")
def main():
manager = EyeComfortManager()
# 根据当前时间设置初始模式
current_hour = time.localtime().tm_hour
if manager.night_start <= current_hour or current_hour < manager.day_start:
manager.night_mode()
else:
manager.day_mode()
# 设置自动切换
schedule.every().day.at("08:00").do(manager.day_mode)
schedule.every().day.at("18:00").do(manager.night_mode)
print("护眼模式自动切换已启动")
print("切换时间:")
print(f" 日间模式:{manager.day_start}:00")
print(f" 夜间模式:{manager.night_start}:00")
print("按 Ctrl+C 停止")
try:
while True:
schedule.run_pending()
time.sleep(30) # 每30秒检查一次
except KeyboardInterrupt:
print("\n护眼模式脚本已停止")
if __name__ == "__main__":
main()
macOS版本(AppleScript)
-- macOS 自动护眼模式设置
-- 需要系统权限控制
use framework "Foundation"
use framework "AppKit"
-- 定义切换时间
property dayStartTime : "08:00"
property nightStartTime : "18:00"
-- 设置深色模式
on setDarkMode()
do shell script "defaults write -g AppleInterfaceStyle Dark"
display notification "已切换到夜间护眼模式" with title "护眼模式"
end setDarkMode
-- 设置浅色模式
on setLightMode()
do shell script "defaults delete -g AppleInterfaceStyle"
display notification "已切换到日间模式" with title "护眼模式"
end setLightMode
-- 获取当前时间
set currentTime to time string of (current date)
-- 判断当前应该使用什么模式
if currentTime > nightStartTime or currentTime < dayStartTime then
setDarkMode()
else
setLightMode()
end if
-- 创建计划任务(需要在系统偏好设置中添加)
display dialog "请在弹出的系统偏好设置中添加自动切换计划:
1. 打开 系统偏好设置 → 通用 → 自动切换外观
2. 设置为 '自定义'
3. 设置时间为 " & dayStartTime & " 和 " & nightStartTime buttons {"知道了"} default button 1
使用说明
Windows PowerShell版本:
- 以管理员身份运行PowerShell
- 将脚本保存为
.ps1文件 - 运行脚本自动创建计划任务
Python版本:
安装依赖:
pip install schedule
运行:
python eye_comfort.py
优化建议
- 调整切换时间:修改脚本中的时间变量设置
- 色温调节:Windows可以使用f.lux,macOS内置Night Shift
- 定时提醒:定期提醒休息眼睛
- 环境感知:配合环境光传感器自动调节
需要我解释原理或添加额外功能(如色温调节、休息提醒等)吗?
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播