中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-17 11:25
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 关于一段PE里面的P处理代码疑问 查看 647 回复 6
楼 主 关于一段PE里面的P处理代码疑问 发表于 2007-12-11 18:41 ·  中国 江苏 无锡 宜兴市 电信
中级用户
★★
积分 487
发帖 212
注册 2007-04-01 08:22
UID 83597
性别 男
状态 离线
减小 Windows PE 的大小
可以从 Windows PE 映像中删除的文件列于 \Samples 文件夹的 Swinpe.txt 中。如果删除所有这些文件,可以将 Windows PE 的 32 位版本从大约 160 MB 减少为一个 86 MB 的磁盘映像。

可以将 Swipe.txt 合并到一个脚本或 .cmd 文件中来自动删除这些文件。下面是 .cmd 文件的示例代码:

REM 根据您的设置修改下列环境变量:
SET WinPE = C:\WinPE
SET Arch = I386
SET SWinPE = c:\swinpe.txt

cd /d %WinPE%\%Arch%
for /f "usebackq delims==" %%i in ("type %SWinPE%") do del /q %%i

以上是PE的微软帮助里面的代码,不是和明白的说,知道的帮忙解说下!~谢谢了!~
2 发表于 2007-12-11 22:15 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
UID 59080
状态 离线
哪里不明白?

貌似上面的for循环命令错了。
3 发表于 2007-12-12 17:33 ·  中国 江苏 无锡 宜兴市 电信
中级用户
★★
积分 487
发帖 212
注册 2007-04-01 08:22
UID 83597
性别 男
状态 离线
我也觉得奇怪啊,应该是这样的吧?

REM 根据您的设置修改下列环境变量:
SET WinPE = C:\WinPE
SET Arch = I386
SET SWinPE = c:\swinpe.txt

cd /d %WinPE%\%Arch%
for /f "usebackq delims" ==%%i in ("type %SWinPE%") do del /q %%i
4 发表于 2007-12-12 18:34 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
UID 59080
状态 离线
Originally posted by luckboy45 at 2007-12-12 17:33:
我也觉得奇怪啊,应该是这样的吧?

REM 根据您的设置修改下列环境变量:
SET WinPE = C:\WinPE
SET Arch = I386
SET SWinPE = c:\swinpe.txt

cd /d %WinPE%\%Arch%
for /f ...

直接这样:
for /f "delims==" %%a in (%WinPE%) do del /q %%a
5 发表于 2007-12-12 20:33 ·  中国 江苏 无锡 宜兴市 电信
中级用户
★★
积分 487
发帖 212
注册 2007-04-01 08:22
UID 83597
性别 男
状态 离线
呵呵,谢谢啦!~受教了!~
6 发表于 2007-12-12 20:41 ·  中国 甘肃 张掖 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
..........

看花了,郁闷

[ Last edited by vkill on 2007-12-13 at 08:28 PM ]
7 发表于 2007-12-12 21:41 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
UID 59080
状态 离线
Originally posted by vkill at 2007-12-12 20:41:
for /f "usebackq delims" ==%%i in ("type %SWinPE%") do del /q %%i 错了

正确的
for /f "usebackq delims" ==%%i in ("%SWinPE%") do del /q %%i
for /f ...

汗……这样也可以正确?
论坛跳转: