我需要检查多个远程Windows服务器(在LAN中)的文件状态(现有?或上次修改日期)。可以通过UNC路径访问这些文件。远程PC需要用户名和密码。最好是某种脚本。
我不是系统管理员,但要求我的老板这样做,因为每台PC都是SQL Server的主机,文件是数据库的备份。我是一名SQL Server数据库开发人员。我试图用T-SQL做这件事,但发现它不适合这样做(虽然可能是可行的)。
答案 0 :(得分:1)
创建一个类似(check.bat
}的批处理文件:
@echo off
set list=server1 server2 server3 server4 serverN
for %%s in (%list%) do (
echo Logging in to %%s
net use \\%%s\shared /user:mydomain\myuser password
echo Checking file existence on %%s
if exist \\%%s\shared\file.txt (
echo File exist on %%s
) else (
echo File does NOT exist on %%s
)
echo Logging out
net use \\%%s\shared /delete
)
有关net use
命令的详细信息,请参阅问题Mapping a network drive without hardcoding a drive letter in a batch file的已接受答案。