我正在嘗試製作一個工具,該工具可以登錄到多個遠程Windows服務器並獲取其驅動器詳細信息並在一個窗口中顯示它們。從多個遠程窗口服務器獲取磁盤空間信息
我期待在遠程服務器上執行的可能命令是wmic logicaldisk get size,freespace,caption
。我打算得到這個命令的輸出並顯示它。
我有遠程服務器主機名和IP,用戶名和密碼。
如何連接到這些遠程服務器並執行命令?
我正在嘗試製作一個工具,該工具可以登錄到多個遠程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
[#1擊中「WMIC」](http://technet.microsoft.com/en-us/library/bb742610.aspx)有答案。 'wmic/node:SERVER1 printer list status'在名爲SERVER1的計算機上運行'printer list status'命令。 –
您應該接受user2301394的答案以提供您自己的答案。 – jeremyjjbrown