中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-03 16:17
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请问批处理中>nul和这行代码是什么意思? 查看 889 回复 3
楼 主 请问批处理中>nul和这行代码是什么意思? 发表于 2007-03-11 10:59 ·  中国 福建 福州 电信
初级用户
积分 92
发帖 26
注册 2007-03-10 07:44
19年会员
UID 81291
性别 男
状态 离线
set /p UserSelection= 请输入您的选择(1/2/3/4/5/6/7/8/9/0):
IF not "%UserSelection%"=="" SET UserSelection=%UserSelection:~0,1%
if "%UserSelection%"=="1" goto creak
if "%UserSelection%"=="2" goto web
if "%UserSelection%"=="3" goto QQ
if "%UserSelection%"=="4" goto main5
if "%UserSelection%"=="5" goto main5
if "%UserSelection%"=="6" goto main5
if "%UserSelection%"=="7" goto main5
if "%UserSelection%"=="8" goto main5
if "%UserSelection%"=="9" goto main
if "%UserSelection%"=="0" goto
cls
echo.
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃ ┃
echo ┃ 选择无效,按任意键返回菜单 ┃
echo ┃ ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo.
echo 现在是:%date% %time%
@pause >nul


以上代码中第二行IF not "%UserSelection%"=="" SET UserSelection=%UserSelection:~0,1%是什么意思啊?尤其是后面的SET UserSelection=%UserSelection:~0,1%意思是什么?不要可以吗?
还有最后一行代码>nul又是什么意思啊?
最后有什么命令可以获得当前盘的盘符吗?多谢你的指点。
2 发表于 2007-03-11 12:32 ·  中国 广东 东莞 电信
初级用户
积分 107
发帖 48
注册 2006-11-30 12:06
19年会员
UID 72174
性别 男
状态 离线
IF not "%UserSelection%"=="" SET UserSelection=%UserSelection:~0,1%


这个代码是说如果你的输入不是空的话就设置UserSelection=你输入的第一个字符

@pause >nul 中的 ">nul" 是指不在屏幕上显示信息
3 发表于 2007-03-11 12:36 ·  中国 浙江 绍兴 诸暨市 电信
高级用户
★★★
Autowalk
积分 845
发帖 375
注册 2007-03-03 01:58
19年会员
UID 80606
性别 男
状态 离线
IF not "%UserSelection%"=="" SET UserSelection=%UserSelection:~0,1%

这个方法好,可以防止别人因为多输而导致错误的输入
4 发表于 2007-03-11 13:02 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线


最后有什么命令可以获得当前盘的盘符吗?

set drive=%cd:~0,2%
echo %drive%
论坛跳转: