DOS 条件语法

1 if
if exist d:\test.txt (echo D盘下有test.txt存在) else (echo D盘下不存在test.txt) 
if "abc"=="xyz" (echo 字符串abc等于字符串xyz) else (echo 字符串abc不等于字符串xyz) 
if 1 equ 2 (echo 1等于2) else (echo 1不等于2) 
if defined str (echo 变量str已经被赋值,其值为%str%) else (echo 变量str的值为空)
if %errorlevel% == 0 (echo net user 命令执行成功) else (echo net user 命令执行失败) 

2 for
格式:FOR %variable IN (set) DO command [command-parameters]
  %variable  指定一个单一字母可替换的参数。变量名称是区分大小写的,所以 %i 不同于 %I
  (set)      指定一个或一组文件。可以使用通配符。
  command    指定对每个文件执行的命令。
  command-parameters 为特定命令指定参数或命令行开关。
参数 /D (参数只能显示当前目录下的目录名字)
for /d %i in (c:\*) do echo %i --显示c盘根目录下的所有目录
参数 /R (搜索指定路径及所有子目录中与set相符合的所有文件)
for /r c:\ %i in (boot.ini) do if exist %i echo %i --很好的搜索命令,列举boot.ini存在的目录
参数 /L (该集表示以增量形式从开始到结束的一个数字序列。可以使用负的 Step)
for /l %i in (1,2,10) do @echo %i --输出1,3,5,7,9 
参数 /F (使用文件解析来处理命令输出、字符串及文件内容。)
for /f "tokens=1,2,3* delims=-, " %i in ("aa bb,cc-dd ee") do echo %i %j %k %l 分析字符串
 
FOR命令中的变量 
    FOR 变量参照的替换已被增强。您现在可以使用下列选项语法:
  ~I - 删除任何引号("),扩充 %I
  %~fI - 将 %I 扩充到一个完全合格的路径名
  %~dI - 仅将 %I 扩充到一个驱动器号
  %~pI - 仅将 %I 扩充到一个路径
  %~nI - 仅将 %I 扩充到一个文件名
  %~xI - 仅将 %I 扩充到一个文件扩展名
  %~sI - 扩充的路径只含有短名
  %~aI - 将 %I 扩充到文件的文件属性
  %~tI - 将 %I 扩充到文件的日期/时间
  %~zI - 将 %I 扩充到文件的大小
  %~$PATH:I - 查找列在路径环境变量的目录(TTT提示:是环境变量path的目录),并将 %I 扩充到找到的第一个完全合格的名称。如果环境变量名未被定义,或者没有找到文件,此组合键会扩充到空字符串
  此外,还可以组合修饰符来得到多重结果:
  %~dpI - 仅将 %I 扩充到一个驱动器号和路径
  %~nxI - 仅将 %I 扩充到一个文件名和扩展名
  %~fsI - 仅将 %I 扩充到一个带有短名的完整路径名
  %~dp$PATH:i - 查找列在路径环境变量的目录,并将 %I 扩充到找到的第一个驱动器号和路径。 
  %~ftzaI - 将 %I 扩充到类似输出线路的 DIR
  在以上例子中,%I 和 PATH 可用其他有效数值代替。%~ 语法用一个有效的 FOR 变量名终止。选取类似 %I 的大写变量名比较易读,而且避免与不分大小写的组合键混淆。

  (以上是系统帮助的内容)
  我们可以看到每行都有一个大写字母"I",这个I其实就是我们在FOR带入的变量,例如:
  FOR /F "usebackq eol=; tokens=1,2* delims=,- " %%x in ("d:\test.txt") do echo %%x %%y %%z
  这里我们就要把那个x,y,z改成%~fx,%~fy,%~fz。

3.goto 选择菜单
:menu
echo                                           1)  安装手机驱动
echo                                           2)  检测设备状态 
set /p choice= 输入数字,选择你需要的操作:
echo.

if '%choice%'=='1' goto :drivers
if '%choice%'=='2' goto :statusdevice

:drivers
{指令}
goto menu  返回menu

:statusdevice
{指令}
goto menu  返回menu

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值