Передача результата одного командного файла другому? - PullRequest
2 голосов
/ 21 сентября 2009

У меня есть командный файл (BAT1.bat), который возвращает следующую строку:

"Учетные данные для входа: 7o5g4cika"

Мне нужно отправить часть результата (то есть "7o5g4cika") в качестве аргумента в другой файл bat BAT2.bat.

BAT2.bat 7o5g4cika

Как я могу объединить их в один файл bat?

Ответы [ 2 ]

3 голосов
/ 21 сентября 2009

Эта строка будет делать то, что вы хотите:

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

То, что делает эта строка, вызывает BAT1.bat, а затем анализирует ее вывод, используя параметры, указанные после /F. В частности, "tokens=3" говорит оболочке взять третий токен и поместить его в переменную. Затем вызывается BAT2.bat с переменной в качестве параметра.

Предполагая, что вы собираетесь использовать это в пакетном файле, вы захотите удвоить знаки процента:

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

Для получения более подробной информации введите

for /?

из командной строки

0 голосов
/ 21 сентября 2009

Сделайте вызов как Bat1.bat | Bat2.bat, затем поместите некоторый код в начало bat2.bat , чтобы получить правильную подстроку.

Если вы не можете нажать bat2.bat , создайте bat3.bat , посвященный настройке " Учетные данные для входа: 7o5g4cika " в " 7o5g4cika"и позвоните, как: Bat1.bat | Bat3.bat | Bat2.bat

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...