Board logo

标题: [文件操作] 【已解决】批处理判断程序文件存在就运行,不存在就运行其它程序。 [打印本页]

作者: toyerspollors    时间: 2021-10-4 22:07     标题: 【已解决】批处理判断程序文件存在就运行,不存在就运行其它程序。

本帖最后由 toyerspollors 于 2021-10-8 16:26 编辑

看了“[批处理命令一日一教学](4)条件判断:if”,还是摸不到头绪。

问题1:我的电脑有下方这两个程序,我要判断a.exe存在就运行a.exe,不存在就运行b.exe【前面的已解决】
问题2:现在我想实现判断a.exe和b.exe同时不存在,就运行c.exe,命令要怎么写?

D:\a1 22\a.exe
E:\gg 33\b.exe

F:\ctg 345\c.exe
作者: Batcher    时间: 2021-10-4 22:17

回复 1# toyerspollors


参考if命令教程第14页
http://bbs.bathome.net/thread-31727-1-1.html
作者: Batcher    时间: 2021-10-4 22:19

回复 1# toyerspollors


    如果看完楼上的教程,还是不成功。请把你写的代码发出来,我帮忙修改。
作者: leo.liu    时间: 2021-10-4 22:24

batcher大佬发话都没人敢接,更没人敢抢
呵呵嘿嘿哈哈
作者: toyerspollors    时间: 2021-10-5 01:33

回复  toyerspollors


    如果看完楼上的教程,还是不成功。请把你写的代码发出来,我帮忙修改。
Batcher 发表于 2021-10-4 22:19


请教老师是这样处理吗?会不会有什么弊端呢?

IF EXIST "D:\a1 22\a.exe" start "D:\a1 22\a.exe"
IF not EXIST "D:\a1 22\a.exe" start "E:\gg 33\b.exee"
作者: toyerspollors    时间: 2021-10-5 14:02

如何实现判断a.exe和b.exe同时不存在,就运行c.exe,命令要怎么写
作者: Fit    时间: 2021-10-5 15:04

@echo off
if not exist "D:\a1 22\a.exe" (
   if exist "E:\gg 33\b.exe" (
   echo b)else (echo c)
)else echo a
pause&exit
作者: toyerspollors    时间: 2021-10-5 22:05

不知道问题2这样写是否正确??

for %%a in ("D:\a1 22\a.exe" "E:\gg 33\b.exe") do (
if not exist %%a start "F:\ctg 345\c.exe"
)
作者: Batcher    时间: 2021-10-6 21:36

回复 6# toyerspollors
  1. if not exist "D:\a1 22\a.exe" (
  2.     if not exist "E:\gg 33\b.exe" (
  3.         start "" "F:\ctg 345\c.exe"
  4.     )
  5. )
复制代码

作者: Batcher    时间: 2021-10-6 21:37

回复 5# toyerspollors


你的start命令是错的,请阅读教程:
http://bbs.bathome.net/thread-14341-1-1.html
作者: qixiaobin0715    时间: 2021-10-8 16:52

回复 1# toyerspollors
问题1和问题2综合起来:
  1. if exist ...a.exe (
  2.     ...a.exe
  3. ) else if exist ...b.exe (
  4.     ...b.exe
  5. ) else (
  6.     ...c.exe
  7. )
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2