Ran*_*per 4 windows vbscript environment-variables
问题:我们的Cobol应用程序运行在我们网络上的许多服务器(主要是服务器2003)上.许多(如果不是全部)这些应用程序使用环境变量进行设置.
问题:从一个工作站,您可以从远程已知服务器列表中收集环境变量的完整列表吗?最好我想在Batch,VBS或Powershell中这样做.
答案:在VBS中
GetEnvironment("[RemoteServersName]")
Function GetEnvironment(ServerName)
strComputer = ServerName
Set objSWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objSWbemServices = objSWbemLocator.ConnectServer _
(strComputer, "root\cimv2", "[ValidLogonName]", "[PasswordForLogonName]")
objSWbemServices.Security_.ImpersonationLevel = 3
Set colVar = objSWbemServices.ExecQuery( _
"Select * from Win32_Environment")
For Each objVar in colVar
WScript.StdOut.Write("Server Name: " & ServerName & VBNewLine)
WScript.StdOut.Write("Description: " & objVar.Description & VBNewLine)
WScript.StdOut.Write("Name: " & objVar.Name & VBNewLine)
WScript.StdOut.Write("System Variable: " & objVar.SystemVariable & VBNewLine)
WScript.StdOut.Write("User Name: " & objVar.UserName & VBNewLine)
WScript.StdOut.Write("Variable Value: " & objVar.VariableValue & VBNewLine & VBNewLine)
Next
End Function
Run Code Online (Sandbox Code Playgroud)
小智 7
这是powershell命令:
gwmi win32_environment -computername dc1.acme.com
Run Code Online (Sandbox Code Playgroud)
如果你想要一个精简版:
gwmi win32_environment -computername dc1.acme.com |select name,variablevalue |ft -auto
Run Code Online (Sandbox Code Playgroud)