我有一个服务器的IP地址的列表,下面的代码(我已经从其他编码报废一起)一个文本文件中的变量遍历并带来回列表中的每个服务器命名文件的修改日期...批处理文件中循环,并创建一个基于每个文件
@ECHO On
SETLOCAL
FOR /f %%a IN (C:\Scripts\Servers.txt) DO (
CALL :getmod %%a
)
GOTO :EOF
:getmod
SET Server=%1
SET File=Abs_Client.exe
FOR %%i IN ("\\%Server%\C$\Com_Dir\%File%") DO SET modif_time=%%~ti
Echo %Server% %File% %modif_time% >> "C:\Scripts\Server_App_Mod_date.txt"
GOTO :eof
这伟大工程......但是,我想要做的就是创建一个围绕它的另一个循环这对于创建一个变量每个文件放在一个目录中,并将其传递到上面的代码中,而不必像上面为单个文件那样手动更改'SET File'。
沿着线的东西;
@ECHO On
SETLOCAL
FOR /D %VAR IN ("\\Network_Location\AppMedia\App Source Files\Prod Apps\Server_Update") DO (
FOR /f %%a IN (C:\Scripts\Servers.txt) DO (
CALL :getmod %%a
)
GOTO :EOF
:getmod
SET Server=%1
SET File=%VAR
FOR %%i IN ("\\%Server%\C$\Com_Dir\%File%") DO SET modif_time=%%~ti
Echo %Server% %File% %modif_time% >> "C:\Scripts\Server_App_Mod_date.txt"
GOTO :eof
)
显然这是错误的,所以任何想法/帮助吗?
优秀:)第一个完美的作品,非常感谢:)第二只是重复“AppMedia是AppMedia“在结果文本文件? – Foxb2328 2014-11-06 15:11:04
aah ...在第一个DIR-Command中缺少/ b-switch ...不知道是否全部......没有尝试,只有硬编码。 :) 我会纠正脚本,请试试:)我没那么熟悉这些文件的操作for循环。 (获得例如时间戳) 或许for循环的第三不能有引号...:/ – BaBa 2014-11-06 15:17:04
尼斯之一! :)现在也是一种享受,似乎也运行得更快:)再次感谢。 – Foxb2328 2014-11-06 15:42:11