我正在尝试创建一个工具,可以登录到多个远程
Windows服务器并获取其驱动器详细信息并在一个窗口下显示它们.
我期待在远程服务器中执行的可能命令是wmic logicaldisk get size,freespace,caption.我打算获取此命令的输出并显示它.
我有远程服务器主机名和IP,用户名和密码.
如何连接到这些远程服务器并执行命令?
解决方法
因此,PowerShell未启用它意味着您需要使用批处理文件.
我建议你试试这个剧本.我找到了这个脚本,它运行正常.
我建议你试试这个剧本.我找到了这个脚本,它运行正常.
我希望这对你有帮助.
@ECHO OFF IF "%~1"=="" goto help IF "%~2"=="" goto help @SETLOCAL ENABLEEXTENSIONS @SETLOCAL ENABLEDELAYEDEXPANSION @FOR /F "tokens=1-3" %%n IN ('"WMIC /node:"%1" LOGICALDISK GET Name,Size,FreeSpace | find /i "%2""') DO @SET FreeBytes=%%n & @SET TotalBytes=%%p @SET /A TotalSpace=!TotalBytes:~0,-9! @SET /A FreeSpace=!FreeBytes:~0,-10! @SET /A TotalUsed=%TotalSpace% - %FreeSpace% @SET /A PercentUsed=(!TotalUsed!*100)/!TotalSpace! @SET /A PercentFree=100-!PercentUsed! IF %TotalSpace% LSS 0 goto error @ECHO Total space: %TotalSpace%GB @ECHO Free space: %FreeSpace%GB @ECHO Used space: %TotalUsed%GB @ECHO Percent Used: %PercentUsed%%% @ECHO Percent Free: %PercentFree%%% @SET TotalSpace= @SET FreeSpace= @SET TotalUsed= @SET PercentUsed= @SET PercentFree= goto end :error echo. echo *** Invalid server or drive specified *** echo. goto help :help echo. echo diskfree.cmd echo. echo Queries remote server for free disk space. echo Specify a MACHINENAME and a drive letter to be queried echo. echo Example: diskfree.cmd MACHINENAME c: echo. goto end :end