![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-13 21:55 |
共 47,812 主题排行 / 349,916 发帖 / 今日 0 篇 / 48,268 会员排行 |
| 论坛回收站 » 麻烦高手解释一下本帖的批处理 |
| 可打印版本 7,355 / 1 |
| 第1楼 tclshx | 发表于 2010-11-20 12:42 |
| 中级用户 发帖 64 积分 249 | |
|
麻烦高手解释一下本帖的批处理 麻烦高手解释一下,能每行都解择更好,那几个IF把我弄晕了,这是一个分区的批处理
echo 输入各分区大小(单位:GB),空格或","分开,最后一个分区不输: set size= Set /P size=各分区大小: echo. echo 输入"NTFS"或"FAT"进行相应格式化,输入"N"或省略则不格式化: set frmt= Set /P frmt=: set frmty= If /I '%frmt%'=='ntfs' set frmty=/for /q /ntfs&&set ss=1024 If /I '%frmt%'=='fat' set frmty=/for /q&&set ss=1028-8 echo 开始分区,稍等... echo 分区过程信息: for /f "tokens=1,2,3,4,5,6,7,8,9 delims=, " %%c in ("%size%") do ( set /A cp=%%c*%ss% GDISK32 1 /cre /pri /sz:!cp! %frmty% GDISK32 1 /act /p:1 GDISK32 1 /cre /ext for %%i in (%%d,%%e,%%f,%%g,%%h,%%i,%%j,%%k) do ( set /A op=%%i*%ss% GDISK32 1 /cre /log /sz:!op! %frmty% )) GDISK32 1 /cre /log /end %frmty% echo. echo 分区完成! |
|
| 第2楼 wewebb | 发表于 2010-11-20 14:16 |
| 初级用户 发帖 53 积分 66 | |
|
echo 输入各分区大小(单位:GB),空格或","分开,最后一个分区不输:
set size= Set /P size=各分区大小: echo. ::从这里开始注释; echo 输入"NTFS"或"FAT"进行相应格式化,输入"N"或省略则不格式化: ::删除 frmt 变量 set frmt= ::用户输入 frmt 变量值( NTFS or FAT ) Set /P frmt=: ::删除 frmt 变量 set frmty= :: 下面的 if 语句是设定 frmty 和 ss 变量值. :: 其中 frmty 变量保存 Gdisk32 的参数 :: /for 为格式化分区; /q 就是快速格式化 /ntfs 指定分区格式 :: 两种分区格式的算法不同。ss 变量是保存基数。 在下面会用到 If /I '%frmt%'=='ntfs' set frmty=/for /q /ntfs&&set ss=1024 If /I '%frmt%'=='fat' set frmty=/for /q&&set ss=1028-8 echo 开始分区,稍等... echo 分区过程信息: ::将用户输入的每个分区大小值取出,最多可设定9个分区 for /f "tokens=1,2,3,4,5,6,7,8,9 delims=, " %%c in ("%size%") do ( rem 下面将用户输入的分区大小数( GB单位 ) 转化为 MB 单位。就是 数值* SS变量值 rem 例如 NTFS 分区则是: GB数值*1024 set /A cp=%%c*%ss% rem 下面两行划分第一个主分区并激活 GDISK32 1 /cre /pri /sz:!cp! %frmty% GDISK32 1 /act /p:1 rem 下面一行将剩余空间划分为扩展分区 GDISK32 1 /cre /ext rem 下面的 For 循环是划分逻辑分区。 最多八个 for %%i in (%%d,%%e,%%f,%%g,%%h,%%i,%%j,%%k) do ( set /A op=%%i*%ss% GDISK32 1 /cre /log /sz:!op! %frmty% )) ::将剩余空间划分为一个逻辑分区 GDISK32 1 /cre /log /end %frmty% echo. echo 分区完成! [ Last edited by wewebb on 2010-11-20 at 14:28 ] |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |