所以我想弄清楚这一点,但我认为我的脚本技能达不到标准。:(
基本上我想做的就是这个。
有一个脚本调用一个文件,该文件有一个我想要查看的成员服务器列表。我想在每台服务器上搜索一个文件,然后吐出一个列出该文件路径的日志。
所以..例如,要引用的文件是text.txt
并且在该文件中列出了服务器 1、2、3。
我想扫描此路径中的每个服务器的c:\temp\
所有子目录并查找file.exe
然后吐出一个日志,显示服务器及其路径位置file.exe
server1 c:\temp\dir1\file.exe
server2 c:\temp\dir3\dir5\file.exe
有人???:(
提前致谢!
这就是我到目前为止所做的......
@ECHO OFF
SET FLNM=file.exe
SET DRV=c
SET DIRS=temp
IF NOT DEFINED FLNM GOTO NAME
IF /I "%FLNM%"=="/Q" GOTO :EOF
SET FLNM=%FLNM: =.%
:DV
IF NOT DEFINED DRV GOTO DV
IF EXIST RESULTS.TXT DEL RESULTS.TXT
IF DEFINED DIRS SET DIRS=%DIRS: =.%
FOR %%D IN (%DRV%) DO (
FOR %%G IN (%FLNM%) DO (
IF DEFINED DIRS (
FOR %%C IN (%DIRS%) DO (
DIR %%D:\ /L /B /S|FINDSTR /I /E \%%C.\%%G>>RESULTS.TXT
)
) ELSE (
DIR %%D:\ /L /B /S|FINDSTR /I /E \%%G>>RESULTS.TXT
)
)
)
CALL :ZEROBYTE RESULTS.TXT
IF NOT EXIST RESULTS.TXT ECHO:"FILES NOT FOUND">>RESULTS.TXT
START NOTEPAD RESULTS.TXT
EXIT /B
:ZEROBYTE
IF %~Z1==0 DEL RESULTS.TXT
GOTO :EOF
我可以让它在每个本地运行,但我宁愿集中运行它。我似乎也无法让它查看所有目录。如果我列出一个目录,它只会在该根目录中扫描。