Ir para conteúdo
Fórum Script Brasil

syquara

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre syquara

syquara's Achievements

0

Reputação

  1. Amigos, bom dia! Sou novo na programação e gostaria da ajuda de vocês! Criei um codigo para gerar inventario dos computadores da rede porém quando o registro roda ele salva para cada maquina um .txt com as configurações, o que quero é unificar os "logs" tipo ter apenas um .txt e a medida que as maquinas forem rodando o script alimente esse .txt. O script .vbs roda através de um .bat abaixo vou colocar os dois codigos. Agradeço desde já. Código do .bat cscript //nologo \\srvbkp\inventario\script\inventario.vbs > \\srvbkp\inventario\relatorio\%COMPUTERNAME%.txt Código .vbs strComputer = "." Public nomemaq, ip1, ip2, ip3, usuario,software, spack, processador, ram1, ram2, ram3, ram4 Public hd1, hd2, mb Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colNome = objWMIService.ExecQuery("Select * From Win32_ComputerSystem") For Each objNome in colNome nomemaq = objNome.Name 'Wscript.Echo "Hostname: " & objNome.Name Next Set IPConfigSet = objWMIService.ExecQuery _ ("Select IPAddress from Win32_NetworkAdapterConfiguration ") For Each IPConfig in IPConfigSet If Not IsNull(IPConfig.IPAddress) Then For i=LBound(IPConfig.IPAddress) _ to UBound(IPConfig.IPAddress) If ((i = 0) And (Len(IPConfig.IPAddress(i)) <= 15)) Then ip1 = IPConfig.IPAddress(i) elseif ((i = 1) And (Len(IPConfig.IPAddress(i)) <= 15)) Then ip2 = IPConfig.IPAddress(i) elseif ((i = 2) And (Len(IPConfig.IPAddress(i)) <= 15)) Then ip3 = IPConfig.IPAddress(i) End If 'WScript.Echo "IP: " & IPConfig.IPAddress(i) Next End If Next Set colUsuario = objWMIService.ExecQuery("Select * From Win32_ComputerSystem") For Each objUsuario in colUsuario usuario = objUsuario.UserName 'Wscript.Echo "Usuario: " & objUsuario.UserName Next Set colSO = objWMIService.ExecQuery("Select * From Win32_OperatingSystem") For Each objSO in colSO software = objSO.Caption & " " & objSO.Version 'Wscript.Echo "*** SOFTWARE ***" & vbCrLf & "Sistema: " & objSO.Caption & " " & objSO.Version spack = "Service Pack " & objSO.ServicePackMajorVersion 'Wscript.Echo "Service Pack: " & objSO.ServicePackMajorVersion Next Set colCPU = objWMIService.ExecQuery("Select * From Win32_Processor") For Each objCPU in colCPU processador = objCPU.DeviceID & ": " & objCPU.Name 'Wscript.Echo "*** HARDWARE ***" & vbCrLf & "Processador " & objCPU.DeviceID & ": " & objCPU.Name Next Set colRAM = objWMIService.ExecQuery("Select * From Win32_PhysicalMemory") For Each objRAM in colRAM If objRAM.DeviceLocator = "ChannelA-DIMM0" Then ram1 = objRAM.DeviceLocator & ": " & objRAM.Capacity /1024\1024 & "MB" elseif objRAM.DeviceLocator = "ChannelB-DIMM0" Then ram2 = objRAM.DeviceLocator & ": " & objRAM.Capacity /1024\1024 & "MB" elseif objRAM.DeviceLocator = "ChannelC-DIMM0" Then ram3 = objRAM.DeviceLocator & ": " & objRAM.Capacity /1024\1024 & "MB" elseif objRAM.DeviceLocator = "ChannelD-DIMM0" Then ram4 = objRAM.DeviceLocator & ": " & objRAM.Capacity /1024\1024 & "MB" End If 'Wscript.Echo "RAM - Modulo " & objRAM.DeviceLocator & ": " & objRAM.Capacity /1024\1024 & "MB" Next Set colHDD = objWMIService.ExecQuery("Select * From Win32_DiskDrive") For Each objHDD in colHDD If objHDD.Index = 0 Then hd1 = objHDD.Model & " (" & objHDD.Size /1000\1000\1000 & "GB)" else hd2 = objHDD.Model & " (" & objHDD.Size /1000\1000\1000 & "GB)" End If 'Wscript.Echo "Disco rigido " & objHDD.Index & ": " & objHDD.Model & " (" & objHDD.Size /1000\1000\1000 & "GB)" Next Set colMB = objWMIService.ExecQuery("Select * From Win32_BaseBoard") For Each objMB in colMB mb = objMB.Manufacturer & " " & objMB.Product 'Wscript.Echo "Placa mae: " & objMB.Manufacturer & " " & objMB.Product Next Wscript.Echo nomemaq &"|"& ip1 &"|"& ip2 &"|"& ip3 &"|"& usuario &"|"& software _ &"|"& spack &"|"& processador &"|"& ram1 &"|"& ram2 &"|"& ram3 &"|"& ram4 &"|"& hd1 &"|"& hd2 &"|"& mb &"|"& Date Set objWMIService = Nothing
×
×
  • Criar Novo...