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
Batch file 如何检查文件是否存在,但使用文本文件存放我要查找的文件路径?_Batch File_If Statement - Fatal编程技术网

Batch file 如何检查文件是否存在,但使用文本文件存放我要查找的文件路径?

Batch file 如何检查文件是否存在,但使用文本文件存放我要查找的文件路径?,batch-file,if-statement,Batch File,If Statement,我正在使用批处理脚本安装用于状态测试的客户端。我希望在创建一个空的检查文件之前,通过检查每个文件是否存在来验证所有文件是否正确安装,该文件告诉脚本它已经安装,因此不要再次安装它 if exist filename. do TYPE NUL > testing_client.done 如果我只是检查几个文件,上面的代码片段非常有用,但是我想验证一个巨大的文件列表 为了使批处理文件易于阅读,我希望有一种方法可以使用包含我需要检查的所有路径/文件名的文本文件,而不必在批处理文件中放入数百行 如

我正在使用批处理脚本安装用于状态测试的客户端。我希望在创建一个空的检查文件之前,通过检查每个文件是否存在来验证所有文件是否正确安装,该文件告诉脚本它已经安装,因此不要再次安装它

if exist filename. do TYPE NUL > testing_client.done
如果我只是检查几个文件,上面的代码片段非常有用,但是我想验证一个巨大的文件列表

为了使批处理文件易于阅读,我希望有一种方法可以使用包含我需要检查的所有路径/文件名的文本文件,而不必在批处理文件中放入数百行

如果有帮助的话,我愿意分享更多的信息,但我不想把这篇文章写得那么长

任何方向都是感激的

set "allthere=Y"
for /f "delims=" %%a in (listoffiles.txt) do if exist "%%a" (echo %%a exists) else (echo %%a missing&set "allthere=N")
if "%allthere%"=="Y" echo all files are present
if "%allthere%"=="N" echo NOT all files are present
您可以选择您想做什么来代替
echo
ing消息

listoffiles.txt
只是一个文件列表,可能包括一行的路径)