如何使用batch for循环从一组文件中为多个变量赋值?

时间:2017-12-04 06:48:59

标签: batch-file for-loop

我正在尝试从另一个脚本调用带有参数的批处理脚本。我有两个txt文件,包含PC IP地址列表和要检查在这些PC上运行的服务列表。我计划这将远程检查大量PC上的服务状态或文件。我试过的,main.bat包含:

for /f %%i %%j in (PCList.txt FileList.txt) do call anotherscript.bat %%i %%j
肯定它不应该工作,因为在man页面中没有这样的东西,我知道。我正在尝试,使用两个变量分别从两个文件中保存两个值,并使用两个参数调用anotherscript.bat。我可以玩一个变量和一个文件。 anotherscript.bat包含:

psexec.exe \\%1 -s IF EXIST "%2" ( echo File exist : %2 >>"%~dp0\logs.txt" )

FileList.txt包含

"C:\Program Files\Java\jre1.8.0_144"
"C:\Program Files\Java\jre1.8.0_144\bin"

PCList.txt包含

LANS14118815
LANS14118816

有没有解决方法?请支持。感谢

1 个答案:

答案 0 :(得分:0)

您需要一种方法来并行读取两个文件。这可以通过同时使用两种方法(data1 = { 'node1': [1,1,2,3], 'node2': [3,4,4,5], 'weight': [1,2,1,1], } df1 = pd.DataFrame(data1, columns = ['node1','node2','weight']) <file1 set /p)来实现:

for /f ... in (file2)

如果您需要输出,请删除@echo off setlocal enabledelayedexpansion <pclist.txt ( for /f "delims=" %%a in (filelist.txt) do ( set /p out= ECHO call anotherscript.bat "!out!" "%%~a" ) )