找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 1437|回复: 9

[文件操作] win11 如何一键收藏当前壁纸到指定目录?

[复制链接]
发表于 2026-7-10 00:05:34 | 显示全部楼层 |阅读模式
我默认使用了win11系统推荐的幻灯版壁纸,似乎每30分钟会翻一张。

有时我看到好看的,就像将它收藏起来。
今天我发现目录在:
C:\Users\用户名\AppData\Roaming\Microsoft\Windows\Themes\CachedFiles

名为:
TranscodedWallpaper

也不知是什么格式,没有扩展名。


请问,如何写批处理,一键将当前这个壁纸样式,复制到下边路径:
D:\Program Files (x86)\W-win10管理\P-屏保-壁纸\Wallpaper\win


谢谢。

壁纸路径及名字

壁纸路径及名字
发表于 2026-7-10 08:26:08 | 显示全部楼层
  1. copy "%APPDATA%\Microsoft\Windows\Themes\CachedFiles\TranscodedWallpaper" "D:\Program Files (x86)\W-win10管理\P-屏保-壁纸\Wallpaper\win\"
复制代码
发表于 2026-7-10 14:52:46 | 显示全部楼层
本帖最后由 aloha20200628 于 2026-7-10 14:54 编辑

以下代码存为 test.bat 运行,自动检测无扩展名图片文件的真实类型(在4种常用类型 jpg, png, gif, bmp 中判断),结果复制为有扩展名的图片文件(新文件名取自当前时间)...

test.bat
  1. <# ::
  2. @echo off &setlocal &set "nf=%date:~,10%"
  3. set "pf=%APPDATA%\Microsoft\Windows\Themes\CachedFiles\TranscodedWallpaper"
  4. set "td=D:\Program Files (x86)\W-win10管理\P-屏保-壁纸\Wallpaper\win"
  5. set "nf=%nf:/=%_%time::=.%" &if not exist "%pf%" exit/b
  6. for /f %%x in ('powershell -nop -c "$pf='%pf%'; iex(${%~f0}|out-string)" ') do if "%%x" neq "0" copy /y "%pf%" "%td%\%nf%.%%x"
  7. exit/b
  8. #>
  9. $b=[io.File]::readAllBytes($pf)[0..7];$h=($b|%{$_.toString('X2')}) -join ''
  10. switch -wildcard ($h) { 'FFD8FF*' { 'jpg' }; '89504E47*' { 'png' }; '47494638*' { 'gif' }; '424D*' { 'bmp' }; default { '0' } }
  11. exit
复制代码
 楼主| 发表于 2026-7-10 18:25:42 | 显示全部楼层
本帖最后由 ednykissyou 于 2026-7-10 18:32 编辑


谢谢~
奇怪,没有任何事情发生?
路径好像也没错。

文件没有扩展名,是不是没有被识别?

我甚至直接用了我的用户名都没用
copy "C:\Users\olo\AppData\Roaming\Microsoft\Windows\Themes\*.*" "D:\Program Files (x86)\W-win10管理\P-屏保-壁纸\Wallpaper\win"
 楼主| 发表于 2026-7-10 18:26:41 | 显示全部楼层
aloha20200628 发表于 2026-7-10 14:52
以下代码存为 test.bat 运行,自动检测无扩展名图片文件的真实类型(在4种常用类型 jpg, png, gif, bmp 中 ...

谢谢,有时并不是图片。
看我发图,是没有扩展名的一个文件。
发表于 2026-7-10 20:08:25 | 显示全部楼层
ednykissyou 发表于 2026-7-10 18:26
谢谢,有时并不是图片。
看我发图,是没有扩展名的一个文件。

我的 win 11 25H2 系统会将当前桌面背景图片文件存为 "%APPDATA%\Microsoft\Windows\Themes\TranscodedWallpaper",与你的存放位置差了一个子目录 CachedFiles,这虽是一个无扩展名的图片文件,但通常就是 .jpg 文件。3楼代码在本人实况中实测成功,其中匹配真实图片文件类型的代码仅为保险起见...
发表于 2026-7-11 12:15:58 | 显示全部楼层
ednykissyou 发表于 2026-7-10 18:25
谢谢~
奇怪,没有任何事情发生?
路径好像也没错。

没有扩展名,也能 copy *.* 吗,应该匹配不到吧
发表于 2026-7-11 12:42:32 | 显示全部楼层
ednykissyou 发表于 2026-7-10 18:25
谢谢~
奇怪,没有任何事情发生?
路径好像也没错。

在管理员窗口命令行试试
  1. copy /y "%APPDATA%\Microsoft\Windows\Themes\CachedFiles\TranscodedWallpaper" "D:\Program Files (x86)\W-win10管理\P-屏保-壁纸\Wallpaper\win\TranscodedWallpaper.jpg"
复制代码
 楼主| 发表于 2026-7-12 11:34:09 | 显示全部楼层
aloha20200628 发表于 2026-7-10 20:08
我的 win 11 25H2 系统会将当前桌面背景图片文件存为 "%APPDATA%\Microsoft\Windows\Themes\TranscodedWa ...

你好。
命令行执行下边的可行,但存为.bat就不行了。
另外,怎么把刚复制的重命名,不要让它覆盖已存在的TranscodedWallpaper即可。

copy /y "%APPDATA%\Microsoft\Windows\Themes\TranscodedWallpaper" "D:\Program Files (x86)\W-win10管理\P-屏保-壁纸\Wallpaper\win\"
发表于 2026-7-12 13:30:25 | 显示全部楼层
ednykissyou 发表于 2026-7-12 11:34
你好。
命令行执行下边的可行,但存为.bat就不行了。
另外,怎么把刚复制的重命名,不要让它覆盖已存在的 ...

以下代码存为 test.bat 运行,先开启一个新的管理员窗口完成复制,代码会最终复制第 4 行定义的图片文件,如要复制第 3 行定义的图片文件,可删除第 4 行或对调第 3,4 行顺序即可。

test.bat
  1. @echo off &fltmc>nul 2>&1 || (powershell -nop -c "start '%~f0' -verb runas" &exit/b)
  2. setlocal &set "nf=%date:~,10%"
  3. set "pf=%APPDATA%\Microsoft\Windows\Themes\CachedFiles\TranscodedWallpaper"
  4. set "pf=%APPDATA%\Microsoft\Windows\Themes\TranscodedWallpaper"
  5. set "td=D:\Program Files (x86)\W-win10管理\P-屏保-壁纸\Wallpaper\win"
  6. set "nf=%nf:/=%_%time::=.%"
  7. copy /y "%pf%" "%td%\Wallpaper_%nf%.jpg" &exit/b
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-7-30 04:55

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表