Board logo

标题: 请问批处理中>nul和这行代码是什么意思? [打印本页]

作者: jellord     时间: 2007-3-11 10:59    标题: 请问批处理中>nul和这行代码是什么意思?

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又是什么意思啊?
最后有什么命令可以获得当前盘的盘符吗?多谢你的指点。
作者: ieutk     时间: 2007-3-11 12:32
IF not "%UserSelection%"=="" SET UserSelection=%UserSelection:~0,1%


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

@pause >nul  中的 ">nul" 是指不在屏幕上显示信息
作者: zhoushijay     时间: 2007-3-11 12:36
IF not "%UserSelection%"=="" SET UserSelection=%UserSelection:~0,1%

这个方法好,可以防止别人因为多输而导致错误的输入
作者: lxmxn     时间: 2007-3-11 13:02


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


set drive=%cd:~0,2%
echo %drive%