中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 一个嵌套问题? 上一主题 | 下一主题
mrhjzhang
初级用户





积分 100
发帖 39
注册 2005-10-27
状态 离线
『楼 主』:  一个嵌套问题?

我的是for(
...

里面嵌套
if A(
...
)

但是
for(
...
if A(
...
)   <-------跳出

if B(
...
)

的时候,在那个地方跳出。

   此帖被 -8 点积分      点击查看详情   


2006-8-4 19:35
查看资料  发短消息 网志   编辑帖子  回复  引用回复
220110
荣誉版主




积分 718
发帖 313
注册 2005-9-26
状态 离线
『第 2 楼』:  

for * (
        ...
        if  a (
        ..
        goto :XX
        )else(
        ..
        goto :YY
        )

)

[ Last edited by 220110 on 2006-8-4 at 22:54 ]

2006-8-4 22:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
mrhjzhang
初级用户





积分 100
发帖 39
注册 2005-10-27
状态 离线
『第 3 楼』:  

谢谢版主
,请问你的意思是不是在第一套()前面加*号?

2006-8-11 20:21
查看资料  发短消息 网志   编辑帖子  回复  引用回复
mrhjzhang
初级用户





积分 100
发帖 39
注册 2005-10-27
状态 离线
『第 4 楼』:  想用bat生成如下代码

%rm% -i "01.rmvb" -o "A01.ra" -s  -e
%rm% -i "01.rmvb" -o "B01.ra" -s  -e
%rm% -i "A01.ra" -i "B01.ra" -o "01.rm" -t "" -a "" -c "" -C "" -q "" -n "" -R ""
if exist 01.rm (del /f /q 01.rmvb & del /f /q ?01.ra)

%rm% -i "02.rmvb" -o "A02.ra" -s  -e
%rm% -i "02.rmvb" -o "B02.ra" -s  -e
%rm% -i "A02.ra" -i "B02.ra" -o "02.rm" -t "" -a "" -c "" -C "" -q "" -n "" -R ""
if exist 02.rm (del /f /q 02.rmvb & del /f /q ?02.ra)

%rm% -i "03.rmvb" -o "A03.ra" -s  -e
%rm% -i "03.rmvb" -o "B03.ra" -s  -e
%rm% -i "A03.ra" -i "B03.ra" -o "03.rm" -t "" -a "" -c "" -C "" -q "" -n "" -R ""
if exist 03.rm (del /f /q 03.rmvb & del /f /q ?03.ra)

%rm% -i "04.rmvb" -o "A04.ra" -s  -e
%rm% -i "04.rmvb" -o "B04.ra" -s  -e
%rm% -i "A04.ra" -i "B04.ra" -o "04.rm" -t "" -a "" -c "" -C "" -q "" -n "" -R ""
if exist 04.rm (del /f /q 04.rmvb & del /f /q ?04.ra)

%rm% -i "05.rmvb" -o "A05.ra" -s  -e
%rm% -i "05.rmvb" -o "B05.ra" -s  -e
%rm% -i "A05.ra" -i "B05.ra" -o "05.rm" -t "" -a "" -c "" -C "" -q "" -n "" -R ""
if exist 05.rm (del /f /q 05.rmvb & del /f /q ?05.ra)

%rm% -i "06.rmvb" -o "A06.ra" -s  -e
%rm% -i "06.rmvb" -o "B06.ra" -s  -e
%rm% -i "A06.ra" -i "B06.ra" -o "06.rm" -t "" -a "" -c "" -C "" -q "" -n "" -R ""
if exist 06.rm (del /f /q 06.rmvb & del /f /q ?06.ra)

%rm% -i "07.rmvb" -o "A07.ra" -s  -e
%rm% -i "07.rmvb" -o "B07.ra" -s  -e
%rm% -i "A07.ra" -i "B07.ra" -o "07.rm" -t "" -a "" -c "" -C "" -q "" -n "" -R ""
if exist 07.rm (del /f /q 07.rmvb & del /f /q ?07.ra)

%rm% -i "08.rmvb" -o "A08.ra" -s  -e
%rm% -i "08.rmvb" -o "B08.ra" -s  -e
%rm% -i "A08.ra" -i "B08.ra" -o "08.rm" -t "" -a "" -c "" -C "" -q "" -n "" -R ""
if exist 08.rm (del /f /q 08.rmvb & del /f /q ?08.ra)

%rm% -i "09.rmvb" -o "A09.ra" -s  -e
%rm% -i "09.rmvb" -o "B09.ra" -s  -e
%rm% -i "A09.ra" -i "B09.ra" -o "09.rm" -t "" -a "" -c "" -C "" -q "" -n "" -R ""
if exist 09.rm (del /f /q 09.rmvb & del /f /q ?09.ra)

2006-8-11 20:22
查看资料  发短消息 网志   编辑帖子  回复  引用回复
mrhjzhang
初级用户





积分 100
发帖 39
注册 2005-10-27
状态 离线
『第 5 楼』:  批处理如下:

for /L %%i in (1,1,9) do  (
@echo %%rm%% -i "0%%i.rmvb" -o "a0%%i.ra" -s  -e >>rr.bat
@echo %%rm%% -i "0%%i.rmvb" -o "b0%%i.ra" -s  -e >>rr.bat
@echo %%rm%% -i "a0%%i.ra" -i "b0%%i.ra" i  -o "0%%i.rm" -t "" -a "" -c "" -c "" -q "" -n "" -R "" >>rr.bat
@echo if exist 0%%i.rm (del /f /q 0%%i.rmvb & del /f /q ?0%%i.ra) >>rr.bat
@echo.>>rr.bat
@echo.>>rr.bat
)

2006-8-11 20:23
查看资料  发短消息 网志   编辑帖子  回复  引用回复
mrhjzhang
初级用户





积分 100
发帖 39
注册 2005-10-27
状态 离线
『第 6 楼』:  

但是问题之一就是嵌套挂号,
还有个问题就是如何用echo 输出“&”,”%&“好像无效。

版主的*号好像加入报错,goto :xx我也看不大明白。
我比较菜,还请多指示啊。

2006-8-11 20:25
查看资料  发短消息 网志   编辑帖子  回复  引用回复
mrhjzhang
初级用户





积分 100
发帖 39
注册 2005-10-27
状态 离线
『第 7 楼』:  

大大们呢??

2006-8-14 20:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
mrhjzhang
初级用户





积分 100
发帖 39
注册 2005-10-27
状态 离线
『第 8 楼』:  

最后再顶一下,看来是没希望了。

2006-8-19 23:33
查看资料  发短消息 网志   编辑帖子  回复  引用回复
willsort
元老会员

Batchinger


积分 4432
发帖 1512
注册 2002-10-18
状态 离线
『第 9 楼』:  


───────────────── 版务记录 ─────────────────
执行:Will Sort
操作:移动主题:自《DOS疑難解答 & 問題討論 (解答室)》
说明:依照主题内容分类,更适合于发表在此版区
处罚:扣除因发表该主题而奖励的6点积分,扣除标题违规惩罚性2点积分
───────────────── 版务记录 ─────────────────


Re mrhjzhang:

      一楼的问题大约是你的if A() 中再度出现了 () 却没有正常转义。

      四五六楼的问题关键在于转义字符 ^ ,echo & | < > ( ) 等特殊字符时需使用这个自负作前缀。

      @echo if exist 0%%i.rm (del /f /q 0%%i.rmvb & del /f /q ?0%%i.ra) >>rr.bat

      可改为:

      echo if exist 0%%i.rm ^(del /f /q 0%%i.rmvb ^& del /f /q ?0%%i.ra^) >>rr.bat

      或者:

      echo if exist 0%%i.rm del /f /q 0%%i.rmvb ^& del /f /q ?0%%i.ra >>rr.bat

[ Last edited by willsort on 2006-8-22 at 03:48 ]



※ Batchinger 致 Bat Fans:请访问 [讨论]批处理编程的异类 ,欢迎交流与共享批处理编程心得!
2006-8-22 03:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
mrhjzhang
初级用户





积分 100
发帖 39
注册 2005-10-27
状态 离线
『第 10 楼』:  

不好意思,嵌套本来就可以,是我某些部分写错了。

[ Last edited by mrhjzhang on 2006-9-6 at 20:10 ]

2006-9-6 08:33
查看资料  发短消息 网志   编辑帖子  回复  引用回复
mrhjzhang
初级用户





积分 100
发帖 39
注册 2005-10-27
状态 离线
『第 11 楼』:  

感谢楼上几位热心的朋友,顺利解决。:P:P:lol::lol:

[ Last edited by mrhjzhang on 2006-9-6 at 20:11 ]

2006-9-6 08:38
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: