title 搜索 Install.Wim 并拷贝
setlocal enabledelayedexpansion & cd /d %~dp0
::设置Wim文件保存目录
set WimDir=R:\OKRBackup\Factory
if not exist "!WimDir!" md "!WimDir!"
del /f /q WimList_*.Log 2>nul
for %%a in (D E F G H I J K L M N P) do (
if exist "%%~a:\" (
pushd %%~a:\
echo 正在搜索 %%~a Install.Wim,此过程可能很耗时间,请耐心等待。。。 & echo,
for /r %%i in (*install.wim) do (
if /i "%%~nxi"=="install.wim" (
if /i not "%%~dpi"=="!WimDir!\" (
set /a Num+=1
set "Wim=%%~i"
>>"%~dp0WimList_CP.Log" echo ^|!Num!^|"%%~i"
>>"%~dp0WimList_XZ.Log" echo !Num!、Install.Wim 位于 "!Wim:\install.wim=!",文件大小: %%~zi 字节
)
)
)
popd
)
)
cls
if defined Num (
if !Num! equ 1 (
echo 正在从 "!Wim:\install.wim=!" 中拷贝 Install.Wim,请耐心等待。。。& echo,
copy "!Wim!" "!WimDir!\" 2>nul && (
echo 拷贝成功!
) || (
echo 系统镜像拷贝失败!请手动复制Install.Wim到打开的R:\OKRBackup\Factory文件夹下
start R:\OKRBackup\Factory
)
) else (
type WimList_XZ.Log | more
echo, & set /p xz=请选择要拷贝的 Install.Wim 编号并回车,不选择请直接回车:
if defined xz for /f "tokens=2 delims=|" %%f in ('findstr "^|!xz!|" WimList_CP.Log') do (
echo, & echo 正在从 "%%~dpf" 中拷贝 Install.Wim,请耐心等待。。。& echo,
copy "%%~f" "!WimDir!\" 2>nul && (
echo 拷贝成功!
) || (
echo 系统镜像拷贝失败!请手动复制Install.Wim到打开的R:\OKRBackup\Factory文件夹下
start R:\OKRBackup\Factory
)
)
)
) else (
echo 未发现 Install.Wim 文件。
)
del /f /q WimList_*.Log
------------------pecmd 脚本
envi parts=
envi part_info=
part list disk ,&disks
forx * %&disks%,&disk,
{
part list part %&disk%,&parts0
forx * %&parts0%,&part,
{
ifex #%
详情回复
发表于 2022-12-30 13:02
wmic datafile where "drive<>'%systemdrive%' and path='\\' and (extension='wim' or extension='esd')" get name
复制代码
随便写几句
echo 全盘一二级目录查找wim/esd文件
for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do (
if exist %%a: if /i not "%systemdrive%"=="%%a:" (
for %%b in (%%a:\*.wim %%a:\*.esd) do echo %%b
for /f "delims=" %%c in ('dir %%a:\ /ad /b') do (
for /f "delims=" %%d in ('dir "%%a:\%%c\*.wim","%%a:\%%c\*.esd" /a /b 2^>nul') do echo %%a:\%%c\%%d
)
)
)
如何查找根目录我知道,查找二级目录没有测试出来,毕竟好久不用wmic datafile这个命令了
随便写几句
echo 全盘一二级目录查找wim/esd文件
for %%a in (C D E F G H I J K L M N O P Q R S T U V W X Y Z
详情回复
发表于 2022-12-28 23:02
n大你好!求帮我修改一个bat,在D盘A文件夹里面有个1.pdf文件,在此文件夹下运行个bat,把1.pdf文件复制到*盘(盘符没有固定)/B文件夹,然后就弹出B文件夹窗口,就像平时双击打开文件夹这样子
@echo off
cd /d "%~dp0"
set Bpath="你的B文件夹名称"
for %%i in (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do (for /f "delims=" %%j in ('dir /ad/b/s "%%i:\%Bpath%"') do copy 1.pdf "%%j"&explorer "%%j" )
exit
试了一下,复制到子目录了!就是复制到了B文件夹下面的C文件夹了,弹出来是C文件夹里面
我就是想能复制到B文件夹目录下,弹出B文件夹目录窗口,帮我看一下哪里出错了,万分感谢!
for /f "tokens=1,2* delims=:" %%a in ('wmic datafile where "filename='install' and extension='wim'" get name 2^>nul ^| findstr ":\" ^| findstr /n .') do (
set "wim-%%a=%%b:%%c"
echo %%a: !wim-%%a!
)
if defined wim-2 (set /p xz=请选择:) else echo !wim-1!文件复制命令