2017-02-14 8 views
0

Родитель файл: test.batЕсть ли способ передать параметры для дочернего скрипта из текстового файла?

@echo off 
for /f %%a in (links.txt) do (
echo opening %%a 
call %%a 
) 
PAUSE 

Текстовый файл: links.txt

Chrome.bat A 

Детский файл: Chrome.bat

@echo off 
echo %1 
start C:\"Program Files (x86)"\Google\Chrome\Application\chrome.exe 

Проблема заключается в том Chrome.bat не принимает параметр from links.txt (т.е. «A»). Оператор Echo в Chrome.bat отображает «Echo is off» вместо отображения «A». Может ли кто-нибудь предоставить решение?

ответ

1
for /f "delims=" %%a... 

Если не указать разделитель, только первый маркер в линии назначен %%a. Знаки по умолчанию включают Пробел

См. for /?|more из запроса для получения более подробной информации.

+0

Привет, он работал для вышеуказанного набора кода. Но он не работает для этого '@echo от SETLOCAL EnableExtensions DisableDelayedExpansion набор/A "INDEX = 0" для/ф "delims =" %% J в (links.txt) делать ( \t эхо %% J \t call set "$ BATCH [%% INDEX %%] = %% J" \t set/A "INDEX + = 1" ) '(Приложение не запускается) –

+0

« не работает »не предоставляет никакой информации о том, в чем проблема. Невозможно увидеть, где вы находитесь. В вашем коде вы просто «эхо» в строке, считанной из файла. Если вы хотите выполнить его, вам понадобится 'call %% J' в одной строке в блоке, ограниченном скобками. – Magoo

+0

LB - это разрыв строки '@echo off' LB' setlocal EnableExtensions DisableDelayedExpansion' LB 'set/A" INDEX = 0 "' LB 'for/f" delims = "%% J in (links.txt) do (' LB ' call set "$ BATCH [%% INDEX %%] = %% J" 'LB' set/A "INDEX + = 1" 'LB') '** Приложение не запускается. ** Я хочу сохранить строку, считанную с файл в массиве, чтобы я мог создать файл журнала для записи кода выхода. –

 Смежные вопросы

  • Нет связанных вопросов^_^