Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 有没有办法从文本文件向子脚本传递参数?_Windows_Batch File_Command Line_Cmd - Fatal编程技术网

Windows 有没有办法从文本文件向子脚本传递参数?

Windows 有没有办法从文本文件向子脚本传递参数?,windows,batch-file,command-line,cmd,Windows,Batch File,Command Line,Cmd,父文件: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没有从links.txt获取参数

父文件: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没有从links.txt获取参数,即A。 Chrome.bat中的Echo语句显示Echo已关闭,而不是显示A。有人能提供解决方案吗

for /f "delims=" %%a...
如果未指定分隔符,则只有行中的第一个标记被分配给%%a。默认标记包括空格


有关详细信息,请参见提示中的/?|更多信息。

Hi,这对上述代码集有效。但是它不适用于此@echo off setlocal EnableExtensions DisableDelayedExpansion set/A INDEX=0 for/f delims=%%J in links.txt do echo%%J call set$BATCH[%%INDEX%%]=%%J set/A INDEX+=1应用程序未启动不工作未提供有关问题的任何信息。无法查看换行符的位置。在代码中,您只是回显从文件中读取的行。如果要执行它,需要在括号分隔的块内的单行上调用%%J。LB is line break@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应用程序未启动。我想将从文件读取的行存储在一个数组中,以便生成一个日志文件来写入退出代码。do子句中的唯一说明是设置$BATCH[x]并递增索引。要执行应用程序,还需要包括call%%J。