标题: [系统相关] 求助:批处理如何判断字符串长度为8值63位?(用于密码判断) [打印本页]
作者: wangteng_13 时间: 2014-1-23 13:20 标题: 求助:批处理如何判断字符串长度为8值63位?(用于密码判断)
想做一个开启系统自带WIFI的批处理,卡在了设置WIFI密码的位置,设置WIFI密码需要8至63位密码
不知道应该怎样判断输入的字符串长度大于等于8,小于等于63位?
:s2
cls
echo.
echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo 请输入虚拟WiFi密码,然后按回车
echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo.
:choice
set /p choice= 请输入8至63位字符的密码:
if %choice% geq 8 ( if %choice% leq 63 goto ok)
echo 输入错误!!请输入8至63位字符的密码
echo 请按任意键重新输入 &pause>nul&cls
goto choice
k
IF NOT "%choice%"=="" SET choice=%choice:~0,63%
IF NOT "%choice%"=="" netsh wlan set hostednetwork key="%choice%"
echo.
echo 已成功更改虚拟WiFi密码为:"%choice%"!
echo 任意键返回主菜单
echo 你可在后面的菜单中设置ID及密码
pause >nul
goto menu
作者: mxxcgzxxx 时间: 2014-1-23 17:26
可以用 findstr 来过滤请查找相关指令说明,http://www.verycd.com/topics/2875050/
作者: xxpinqz 时间: 2014-1-23 19:44
可以改成这样试试:- :s2
- cls
- echo.
- echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- echo 请输入虚拟WiFi密码,然后按回车
- echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- echo.
- set "error="
- set /p choice= 请输入8至63位字符的密码:
- if "%choice:~7%"=="" set error=.
- if not "%choice:~63%"=="" set error=.
- if defined error (
- echo 输入错误!!请输入8至63位字符的密码
- pause
- goto :s2
- )
- netsh wlan set hostednetwork key="%choice%"
- echo.
- echo 已成功更改虚拟WiFi密码为:"%choice%"!
- echo 任意键返回主菜单
- echo 你可在后面的菜单中设置ID及密码
- pause >nul
- goto menu
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |