将一个批处理文件的结果传递给另一个?

时间:2009-09-21 09:06:19

标签: batch-file

我有一个批处理文件(BAT1.bat),它返回以下字符串:

“登录凭证:7o5g4cika”

我需要将结果的一部分(即“7o5g4cika”)作为参数发送到另一个bat文件BAT2.bat。

BAT2.bat 7o5g4cika

如何将这些组合到单个bat文件中?

2 个答案:

答案 0 :(得分:3)

这一行会做你想要的:

for /F "tokens=3" %v in ('BAT1.bat') do call BAT2.bat %v

这一行的作用是调用BAT1.bat,然后使用/F之后指定的选项解析其输出。具体来说,"tokens=3"告诉shell获取第三个标记并将其放入变量中。然后,以变量作为参数调用BAT2.bat

假设您要在批处理文件中使用它,您将要将百分号加倍:

for /F "tokens=3" %%v in ('BAT1.bat') do call BAT2.bat %%v

有关详细信息,请键入

for /?

从命令行

答案 1 :(得分:-1)

拨打Bat1.bat | Bat2.bat之类的电话,然后在 bat2.bat 的开头添加一些代码,以获得正确的子字符串。

如果您无法触及 bat2.bat ,请创建一个 bat3.bat ,专门用于调整“登录凭据:7o5g4cika ”到“ 7o5g4cika ”并拨打电话:Bat1.bat | Bat3.bat | Bat2.bat