none
Gravar em arquivo RRS feed

  • Pergunta

  • Ba galera,

    O que devo fazer para que o resultado desse script seja gravado em texto, e que esse resultado seja gravado em um arquivo unico em um caminho na rede.

     strComputer="."  
     Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")   
     Set colItems = objWMIService.ExecQuery("Select SystemName,DeviceID,Size,FreeSpace, DriveType from Win32_LogicalDisk WHERE DriveType=3",,48)     
     wscript.echo "Computador - Unidade  Total   Livre   Utilizado"   
     For Each objItem in colItems   
       if err.number=0 then   
     qtdUtilizada=Replace(Round((objItem.Size - objItem.FreeSpace)/1024/1024/1024,2),",",".")   
     Wscript.echo "    " & objItem.SystemName & " - " &  objItem.DeviceID & _   
     vbtab & round((objItem.Size/1024/1024/1024),2) & "GB" &_   
     vbtab & round((objItem.FreeSpace/1024/1024/1024),2) & "GB" &_   
     vbtab & qtdUtilizada   
     end if   
     err.clear   
     Next
     

    obs, eu gostaria de deixar o script agendando para execuçao uma vez por semana nos servidores, e o resultado seja gravado no mesmo arquivo, mais a execução teria que ser feita de forma simuntanea, alguem sabe como fazer.

    abraço tcheeeee.


    terça-feira, 19 de outubro de 2010 01:11

Respostas

  • Este vai sempre acrescentando dados no arquivo, se o arquivo não existe ele cria e coloca o cabeçalho.

    strComputer="."  
    
    strArquivo = "\\seuservidor\seushare\espaço_em_disco.txt"
    
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")   
    Set colItems = objWMIService.ExecQuery("Select SystemName,DeviceID,Size,FreeSpace, DriveType from Win32_LogicalDisk WHERE DriveType=3",,48)     
     
    'Verifica se o arquivo existe, se não existir cria e coloca cabeçalho
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Const ForAppending = 8
    If objFSO.FileExists(strArquivo) Then
        Set objFile = objFSO.OpenTextFile(strArquivo, ForAppending, True)
    Else
        Set objFile = objFSO.CreateTextFile(strArquivo)
    	objFile.Writeline "Computador - Unidade  Total   Livre   Utilizado" 
    End If
    
     For Each objItem in colItems   
    	if err.number=0 then   
    		qtdUtilizada=Replace(Round((objItem.Size - objItem.FreeSpace)/1024/1024/1024,2),",",".")   
    		strResultado = objItem.SystemName & " - " &  objItem.DeviceID & _   
    			vbtab & round((objItem.Size/1024/1024/1024),2) & "GB" &_   
    			vbtab & round((objItem.FreeSpace/1024/1024/1024),2) & "GB" &_   
    			vbtab & qtdUtilizada   
    		objFile.WriteLine strResultado
    	end if   
    	err.clear   
     Next
    
     objFile.close


    Fábio de Paula Junior

    • Marcado como Resposta Marcelo TI segunda-feira, 13 de fevereiro de 2012 11:44
    segunda-feira, 13 de fevereiro de 2012 11:39
    Moderador

Todas as Respostas

  • Marcelo,

    Este tópico seu é antiog, vc já deve estar mandando nisso.


    Fábio de Paula Junior



    quarta-feira, 8 de fevereiro de 2012 16:21
    Moderador
  • Este vai sempre acrescentando dados no arquivo, se o arquivo não existe ele cria e coloca o cabeçalho.

    strComputer="."  
    
    strArquivo = "\\seuservidor\seushare\espaço_em_disco.txt"
    
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")   
    Set colItems = objWMIService.ExecQuery("Select SystemName,DeviceID,Size,FreeSpace, DriveType from Win32_LogicalDisk WHERE DriveType=3",,48)     
     
    'Verifica se o arquivo existe, se não existir cria e coloca cabeçalho
    Set objFSO = CreateObject("Scripting.FileSystemObject")
    Const ForAppending = 8
    If objFSO.FileExists(strArquivo) Then
        Set objFile = objFSO.OpenTextFile(strArquivo, ForAppending, True)
    Else
        Set objFile = objFSO.CreateTextFile(strArquivo)
    	objFile.Writeline "Computador - Unidade  Total   Livre   Utilizado" 
    End If
    
     For Each objItem in colItems   
    	if err.number=0 then   
    		qtdUtilizada=Replace(Round((objItem.Size - objItem.FreeSpace)/1024/1024/1024,2),",",".")   
    		strResultado = objItem.SystemName & " - " &  objItem.DeviceID & _   
    			vbtab & round((objItem.Size/1024/1024/1024),2) & "GB" &_   
    			vbtab & round((objItem.FreeSpace/1024/1024/1024),2) & "GB" &_   
    			vbtab & qtdUtilizada   
    		objFile.WriteLine strResultado
    	end if   
    	err.clear   
     Next
    
     objFile.close


    Fábio de Paula Junior

    • Marcado como Resposta Marcelo TI segunda-feira, 13 de fevereiro de 2012 11:44
    segunda-feira, 13 de fevereiro de 2012 11:39
    Moderador