有阴也有阳 发表于 2023-10-23 19:06:32

如何用一个bat文件启动任意位置的另外一个bat文件命令

本帖最后由 有阴也有阳 于 2023-10-24 18:20 编辑

       如何用一个bat文件启动任意位置的另外一个bat文件命令——任意一个盘符下的X文件夹里的Y.bat,请大神赐教,谢谢!!!{:1_192:}

       感谢诸位网友的热心回答,试了一下,都不行,路径中有中文名(中文名的文件夹),现在把条件改一下,相对容易一些:

       如何用一个bat文件启动此bat文件所在的驱动器里的另外一个bat文件命令——在同一个驱动器里的X文件夹里的Y.bat?

       运行bat所在的驱动器:

       %~d0


hua_wuxin 发表于 2023-10-23 19:44:34

for %%I in (A B C D E F G ……自行补全) do if exist %%I:\X\Y.bat call %%I:\X\Y.bat

yyz2191958 发表于 2023-10-23 19:50:07

hua_wuxin 发表于 2023-10-23 19:44
for %%I in (A B C D E F G ……自行补全) do if exist %%I:\X\Y.bat call %%I:\X\Y.bat

赞一个!

nathan6498 发表于 2023-10-23 20:00:31

hua_wuxin 发表于 2023-10-23 19:44
for %%I in (A B C D E F G ……自行补全) do if exist %%I:\X\Y.bat call %%I:\X\Y.bat

赞一个!

有阴也有阳 发表于 2023-10-23 20:08:52

hua_wuxin 发表于 2023-10-23 19:44
for %%I in (A B C D E F G ……自行补全) do if exist %%I:\X\Y.bat call %%I:\X\Y.bat

太谢谢了!!!

我是个业余爱好者,真是:

用到哪,学到哪;学到哪,用到哪。边学边用,边用边学。在学中用,在用中学。现学现用,现用现学......

让您见笑了!!!{:1_186:}

有阴也有阳 发表于 2023-10-23 20:55:33

hua_wuxin 发表于 2023-10-23 19:44
for %%I in (A B C D E F G ……自行补全) do if exist %%I:\X\Y.bat call %%I:\X\Y.bat

试了一下,不行,一运行,跳出CMD窗口后,就快速跑一串代码,然后就窗口关闭,什么动静也没有了。

rbwrbw 发表于 2023-10-23 21:51:33

good

yc2428 发表于 2023-10-23 22:10:02

学习下

hilsonma 发表于 2023-10-23 22:39:58

本帖最后由 hilsonma 于 2023-10-23 22:42 编辑

有阴也有阳 发表于 2023-10-23 20:55
试了一下,不行,一运行,跳出CMD窗口后,就快速跑一串代码,然后就窗口关闭,什么动静也没有了。
for %%i in (c d e f g h i j k l m n o p q r s t u v w x y z a b) do call %%i:\x\y.bat 2>nul

也可以直接在命令行窗口试:
for %i in (c d e f g h i j k l m n o p q r s t u v w x y z a b) do call %i:\x\y.bat 2>nul

pub 发表于 2023-10-23 23:42:11

callx:\y.bat

freedom_de 发表于 2023-10-24 08:22:52

可以把别bat设置为环境变量 ,这样应该只要做cmd命令界面可以随时调用了

lixiangliuyi 发表于 2023-10-24 08:24:41

文件夹不要有中文路径
编码要用ANSI


最好是先cd /d xxx目录
再 call y.bat

hua_wuxin 发表于 2023-10-24 09:57:11

有阴也有阳 发表于 2023-10-23 20:55
试了一下,不行,一运行,跳出CMD窗口后,就快速跑一串代码,然后就窗口关闭,什么动静也没有了。

你的Y.bat最前面加一行
@pushd "%~dp0"

最后(以及所有的exit ...之前)加一行
@pause

看报什么

lps4290 发表于 2023-10-24 10:15:17

lixiangliuyi 发表于 2023-10-24 08:24
文件夹不要有中文路径
编码要用ANSI



编码要用ANSI,这个真是重点,新手很容易踩坑

有阴也有阳 发表于 2023-10-24 18:18:56

hilsonma 发表于 2023-10-23 22:39
for %%i in (c d e f g h i j k l m n o p q r s t u v w x y z a b) do call %%i:\x\y.bat 2>nul

也 ...

试了一下,还是不行,路径中有中文名(中文名的文件夹)......

谢谢!!!

hilsonma 发表于 2023-10-25 15:49:36

有阴也有阳 发表于 2023-10-24 18:18
试了一下,还是不行,路径中有中文名(中文名的文件夹)......

谢谢!!!

加引号试试
for %%i in (c d e f g h i j k l m n o p q r s t u v w x y z a b) do call "%%i:\x\y.bat" 2>nul

nowayer 发表于 2023-11-17 04:37:39

无犹启动 发表于 2024-2-18 22:26:37

赞一个!

abcabc8759 发表于 2024-2-18 23:10:36

真厉害,学习一下!

edison_2008 发表于 2024-2-19 08:39:17

啥不行。任何地方 CALL 都可以调用,除非批处理本身有问题

hehuiying 发表于 2024-4-14 03:46:50

谢谢分享

无犹启动 发表于 2024-4-22 11:21:19

谢谢分享

szwp 发表于 2024-4-22 11:33:33

中文还没搞定?
页: [1]
查看完整版本: 如何用一个bat文件启动任意位置的另外一个bat文件命令