批处理 if嵌套
@echooffsetlocalENABLEDELAYEDEXPANSIONset/pchoice=请选择:if/i"%choice%"=="1"(echo1.我echo...
@echo off
setlocal ENABLEDELAYEDEXPANSION
set /p choice= 请选择:
if /i "%choice%"=="1" (
echo 1.我
echo 2.物理系
echo 3.....
set /p choice1= 请选择:
if /i "%choice1%"=="1" (
set /p choice2= 请选择:
if /i "%choice2%"=="1"
echo ok
)
)
pause看看程序哪里错了? 展开
setlocal ENABLEDELAYEDEXPANSION
set /p choice= 请选择:
if /i "%choice%"=="1" (
echo 1.我
echo 2.物理系
echo 3.....
set /p choice1= 请选择:
if /i "%choice1%"=="1" (
set /p choice2= 请选择:
if /i "%choice2%"=="1"
echo ok
)
)
pause看看程序哪里错了? 展开
2个回答
展开全部
条件代码如下:
@echo off & setlocal enabledelayedexpansion
title 删除不匹配文件
for /f "delims=" %%a in ('dir /b /a-d *.lrc') do (
if not exist "%%~na.amr" (
if not exist "%%~na.mp3" (
if not exist "%%~na.wma" (
del /q "%%a" )
)
)
)
goto :eof
批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中。批处理文件的扩展名为bat 。目前比较常见的批处理包含两类:DOS批处理和PS批处理。PS批处理是基于强大的图片编辑软件Photoshop的,用来批量处理图片的脚本;而DOS批处理则是基于DOS命令的,用来自动地批量地执行DOS命令以实现特定操作的脚本。更复杂的情况,需要使用if、for、goto等命令控制程式的运行过程,如同C、Basic等高级语言一样。如果需要实现更复杂的应用,利用外部程式是必要的,这包括系统本身提供的外部命令和第三方提供的工具或者软件。批处理程序虽然是在命令行环境中运行,但不仅仅能使用命令行软件,任何当前系统下可运行的程序都可以放在批处理文件中运行。
@echo off & setlocal enabledelayedexpansion
title 删除不匹配文件
for /f "delims=" %%a in ('dir /b /a-d *.lrc') do (
if not exist "%%~na.amr" (
if not exist "%%~na.mp3" (
if not exist "%%~na.wma" (
del /q "%%a" )
)
)
)
goto :eof
批处理(Batch),也称为批处理脚本。顾名思义,批处理就是对某对象进行批量的处理,通常被认为是一种简化的脚本语言,它应用于DOS和Windows系统中。批处理文件的扩展名为bat 。目前比较常见的批处理包含两类:DOS批处理和PS批处理。PS批处理是基于强大的图片编辑软件Photoshop的,用来批量处理图片的脚本;而DOS批处理则是基于DOS命令的,用来自动地批量地执行DOS命令以实现特定操作的脚本。更复杂的情况,需要使用if、for、goto等命令控制程式的运行过程,如同C、Basic等高级语言一样。如果需要实现更复杂的应用,利用外部程式是必要的,这包括系统本身提供的外部命令和第三方提供的工具或者软件。批处理程序虽然是在命令行环境中运行,但不仅仅能使用命令行软件,任何当前系统下可运行的程序都可以放在批处理文件中运行。
展开全部
@echo off & setlocal ENABLEDELAYEDEXPANSION
set /p choice= 请选择:
if /i "%choice%"=="1" (
echo 1.我
echo 2.物理系
echo 3.....
set /p choice1= 请选择:
if /i "!choice1!"=="1" (
set /p choice2= 请选择:
if /i "!choice2!"=="1" echo ok
)
)
pause
变量延迟的问题,改变
if /i "%choice1%"=="1"
if /i "%choice2%"=="1"
这两个的百分号为叹号即可
set /p choice= 请选择:
if /i "%choice%"=="1" (
echo 1.我
echo 2.物理系
echo 3.....
set /p choice1= 请选择:
if /i "!choice1!"=="1" (
set /p choice2= 请选择:
if /i "!choice2!"=="1" echo ok
)
)
pause
变量延迟的问题,改变
if /i "%choice1%"=="1"
if /i "%choice2%"=="1"
这两个的百分号为叹号即可
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询