在这篇博客中,我将分享一个使用 PowerShell 编写的简单脚本,可以定时切换 Windows 10 桌面壁纸。这个脚本可以让你的桌面更具生机,展示你喜欢的多张图片。
背景
我发现一些壁纸网站提供的壁纸挺不错,但苦于每次手动更改桌面壁纸十分麻烦,而上传到wallpaper上似乎也不是很便捷,便萌生出弄个脚本执行自动切换壁纸,以桌面保持新鲜感。
PowerShell 脚本
# 设置文件夹路径
$folderPath = "C:\Users\35760\Pictures\wallpaper"
# 获取文件夹中所有图片的路径
$images = Get-ChildItem -Path $folderPath -Filter *.jpg | Sort-Object {Get-Random}
# 初始化计数器
$wallpaperChangeCount = 0
# 设置更换壁纸的间隔时间(秒)
$intervalInSeconds = 120 # 更换壁纸,60*n,即120为2分钟
# 加载 User32.dll
Add-Type @"
using System;
using System.Runtime.InteropServices;
public class User32 {
[DllImport("user32.dll", SetLastError = true)]
public static extern int SystemParametersInfo(int uAction, int uParam, string lpvParam, int fuWinIni);
}
"@
# 无限循环,定时更换壁纸
while ($true) {
foreach ($image in $images) {
# 设置壁纸
[User32]::SystemParametersInfo(20, 0, $image.FullName, 3)
# 增加计数器
$wallpaperChangeCount++
# 显示切换信息
Write-Host " 本次脚本运行切换了 $wallpaperChangeCount 张壁纸"
Write-Host "当前壁纸名为 $image "
# 等待一定时间
Start-Sleep -Seconds $intervalInSeconds
}
}
# 该脚本会不断循环更换图片,你可以通过关闭 PowerShell 窗口来停止脚本或者CTRL+c大法。
这个脚本会在指定文件夹中的图片中随机选择一张,然后每隔一段时间切换一次桌面壁纸.
如何使用
-
将脚本保存为
.ps1
文件,比如 robot.ps1
。 -
在 PowerShell 窗口中运行脚本。
-
让脚本在后台运行,定期切换桌面壁纸。
运行结果
这个简单的 PowerShell 脚本让你的桌面焕然一新,让你更好地享受计算机桌面。
打印中文出现一些power shell的一些设定问题,参考下方链接即可解决
永久解决 windows powershell 和 CMD 中文显示问号及乱码问题 - 掌印博客
希望这个脚本能为你带来一些乐趣,也欢迎你根据自己的需求进行定制。如果有任何问题或建议,欢迎留言!