中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
English/Chinese Fix Translation
作者:
标题: 求教if exit的问题 上一主题 | 下一主题
junyee
中级用户




积分 253
发帖 112
注册 2006-5-31
状态 离线
『楼 主』:  求教if exit的问题 使用 LLM 解释/回答一下

格式:if exist 文件名  待执行的命令
如果有指定的文件,则条件成立,运行命令,否则运行下一句

如果待执行的命令有两条或两条以上的话,应该怎么写?

再问个:
求段语句,使其有如下效果。
如果D:\下有01.txt 02.txt(两个要同时存在)
则打开01.txt 02.txt的内容
否则删除,(在只有01.txt 或02.txt的情况下)01.txt(或02.txt)

盼答~~~


2006-10-12 11:37
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
3742668
荣誉版主





积分 2013
发帖 718
注册 2006-2-18
状态 离线
『第 2 楼』:   使用 LLM 解释/回答一下

1.

if exist 1.txt if exist 2.txt (start "" 1.txt && start "" 2.txt)

2.
@echo off
dir /a-d 1.txt || goto next
dir /a-d 2.txt || goto next
start "" 1.txt & start "" 2.txt
goto :eof

:next
del 1.txt 2.txt 2>nul
goto :eof

代码均未测试...


2006-10-12 11:53
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
junyee
中级用户




积分 253
发帖 112
注册 2006-5-31
状态 离线
『第 3 楼』:   使用 LLM 解释/回答一下

谢谢喽。。。
试一下先。。


2006-10-12 11:59
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 4 楼』:   使用 LLM 解释/回答一下

  把2F的代码合并一下,应该能满足楼主的要求:

@echo off
if exist 1.txt if exist 2.txt (start "" 1.txt && start "" 2.txt) else (del 1.txt 2.txt 2>nul)




尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2006-10-12 12:22
查看资料  发短消息  网志   编辑帖子  回复  引用回复
KIKOOOO
初级用户





积分 34
发帖 12
注册 2006-9-25
状态 离线
『第 5 楼』:   使用 LLM 解释/回答一下

请问||在这里是什么用法?逻辑运算吗?
还有加在1.txt 前的''''这里又是什么意思呢?


2006-10-12 12:44
查看资料  发送邮件  访问主页  发短消息  网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 6 楼』:   使用 LLM 解释/回答一下

  1、

& command1 & command2 用来分隔一个命令行中的多个命令。Cmd.exe 运行第一个命令,然后运行第二个命令。
&& command1 && command2 只有在符号 && 前面的命令成功时,才用于运行该符号后面的命令。Cmd.exe 运行第一个命令,然后只有在第一个命令运行成功时才

运行第二个命令。
|| command1 || command2 只有在符号 || 前面的命令失败时,才用于运行符号 || 后面的命令。Cmd.exe 运行第一个命令,然后只有在第一个命令未能运行成

功(接收到大于零的错误代码)时才运行第二个命令。
( ) (command1 & command2) 用来分组或嵌套多个命令。
; 或者 , command1 parameter1;parameter2 用来分隔命令参数。
注意
“与”符号 (&)、管道符号 (|) 以及括号 () 是特殊字符,将它们作为参数传递时,必须在其前面加上转义字符 (^) 或引号。
如果某个命令成功完成操作,则该命令就返回零 (0) 退出代码或不返回任何退出代码。有关退出代码的详细信息,请参阅 Microsoft Windows Resource Kit。

  2、

START




"title" 在窗口标题栏中显示的标题。
  ……

  当filename为带空格的路径的时候,必须用引号把路径括起来,此时,为了避免start把路径当作标题,就在start和路径之间插入一个引号对来区别标题与路径。




尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2006-10-12 12:53
查看资料  发短消息  网志   编辑帖子  回复  引用回复
KIKOOOO
初级用户





积分 34
发帖 12
注册 2006-9-25
状态 离线
『第 7 楼』:   使用 LLM 解释/回答一下

嗯,学习ing。谢谢


2006-10-12 12:58
查看资料  发送邮件  访问主页  发短消息  网志   编辑帖子  回复  引用回复
NaturalJ0
银牌会员




积分 1181
发帖 533
注册 2006-8-14
状态 离线
『第 8 楼』:   使用 LLM 解释/回答一下


if exist filename.txt (
echo 1
echo 2
echo 3
) else (
echo 4
echo 5
echo 6
)


这个格式可能使用起来方便些。


2006-10-12 20:48
查看资料  发短消息  网志   编辑帖子  回复  引用回复

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


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



论坛跳转: