我将如何收集特定的计算机信息并整理到一个文件中?

问题描述:

我是一个IT的家伙,我需要做的就是以某种方式收集以下信息:我将如何收集特定的计算机信息并整理到一个文件中?

  • 戴尔服务标签
  • 计算机名称
  • 用户名
所有用户的

在我的网络中,然后将这些信息分类到文本或Excel文件中。

我曾尝试使用VBS文件,以及为每个用户创建一个.bat文件登录脚本,但我似乎没有得到它完全工作。

+1

你需要什么帮助?获取戴尔服务标签?从700台机器获取信息?在收到数据后对数据进行排序? – sarnold

+0

另外,这些信息是目前在你的系统上传播的,还是你必须等待他们进行身份验证或者什么之后才能尝试获取它? – Sturm

+0

我需要帮助创建一个脚本,或者沿着这些行来收集粗体信息,然后对它进行排序。 –

下面是代码,给出你问的问题,但在将来,请发布你的代码,尽可能少。

'Get Dell Service Tag Info 
set ProSet = GetObject("winmgmts:").InstancesOf("Win32_BIOS") 
Set ProSet1 = GetObject("winmgmts:").InstancesOf("Win32_SystemEnclosure") 
For each Pro in ProSet 
    For each Pro1 in ProSet1 
    ServiceTag=Pro.SerialNumber 
    wscript.echo ServiceTag 
    exit for 
    Next 
    exit for 
Next 

'get username and computername, could also be asked in a batch 
Set oShell  = WScript.CreateObject("WScript.Shell") 
Set oShellEnv = oShell.Environment("Process") 
sComputerName = oShellEnv("ComputerName") 
sUsername  = oShellEnv("username") 
wscript.echo sComputerName & " " & sUsername 

另一个更可靠的方式..

Set objWSHNetwork = CreateObject ("WScript.Network") 
sComputerName = objWSHNetwork.ComputerName 
sUsername  = objWSHNetwork.UserName 
wscript.echo sComputerName & " " & sUsername 

您可以将结果记录到数据库或文本文件里(Excel文件是不是一个好主意,我是afread) 这里伐木过程转换为稍后可以使用Excel打开的文本文件。

sub log (user, computer) 
    dim fs,f 
    set fs=Server.CreateObject("Scripting.FileSystemObject") 
    set f=fs.OpenTextFile(Server.MapPath(".\logging.csv"),8,true) 
    f.WriteLine now & "," & user & "," & computer 
    f.Close:set f=Nothing 
    set fs=Nothing 
end sub 
+0

嘿彼得,对于第一个脚本来说,它的工作原理是完美的,但是无论如何都要将信息输出到文本文档或Excel电子表格中? –

+0

我打算做的是把它放在我们的AD服务器上,并在每个人的登录脚本上运行它,并从那里填充Excel电子表格。 –

+0

在这里你去,我想我赢得了这个8>) – peter