请将下面代码保存到.bat的批处理文件里,然后运行(注意保存为 utf-8 的编码格式.)
@echo off
:: 设置解码模式为 utf-8
chcp 65001 > NUL
echo.
echo --------------------------
echo 作者: 马小战
echo 更新: 20230812
echo 作用: 获取 win11 锁屏壁纸
echo --------------------------
echo.
:: 定义聚焦壁纸文件所在路径
set pics_path=C:\Users\%username%\AppData\Local\Packages\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\LocalState\Assets
:: 定义目标目录
set "folder_name=win_wall_papers"
:: 用户桌面目录
set "desktop_path=%USERPROFILE%\Desktop"
:: 要保存到的目标文件夹
set "folder_path=%desktop_path%\%folder_name%"
:: 创建目标文件夹
if exist "%folder_path%" (
echo 文件夹已存在,无需创建.
) else (
mkdir "%folder_path%" >nul 2>&1
if errorlevel 1 (
echo 创建文件夹失败!
) else (
echo 文件夹创建成功!
)
)
:: 复制目录下的所有文件 并将输出保存到临时文件
xcopy /E /I /Y "%pics_path%" "%folder_path%" > %desktop_path%\temp_xcopy_output.txt
:: 提取复制结果数字
for /f "tokens=1 delims= " %%a in ('type %desktop_path%\temp_xcopy_output.txt ^| find "File(s) copied"') do (
if not "%%a"=="" (
echo 已复制: %%a 个文件.
) else (
echo 复制文件数未知.
)
)
:: 删除临时文件
del %desktop_path%\temp_xcopy_output.txt
IF %ERRORLEVEL% equ 0 (
echo 删除临时文件成功.
) else (
echo 删除临时文件失败.
)
:: 重命名复制文件夹里的文件后缀
:: 定义文件后缀
set file_extension=.png
for %%i in (%folder_path%\*) do (
ren "%%~i" "%%~ni%file_extension%"
)