Usuário com melhor resposta
Relatorio de Diretorios por volume

Pergunta
-
Ba Galera Boa tarde.
Alguem sabe como ou tem um codigo VBS no qual o mesmo crie um log ou um relatorio aonde conste o nome de todos os diretorios e arquivos presente em um volume de um servidor, e traga as seguintes informações.
Nome do diretorio.
Tamanho do diretorio.
Data da criação do diretorio.
Owner do diretorio.
Sei que existe um programa chamado dumpacl que traz um log assim porem aqui na assembleia, conforme conforme algumas normas de governo, esse tipo de programa nao pode ser usado...
Valeu galera..- Tipo Alterado Marcelo TI segunda-feira, 31 de agosto de 2009 16:40
Respostas
-
Olá,
Verifique o script abaixo:
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set WSHShell = WScript.CreateObject("WScript.Shell")
strLog = "log.txt"
'caminho da pasta que irá varrer
Set objFolder = objFSO.GetFolder("c:\")
'quantidade maxima de niveis
strMaxLog = 4
Set objLogFile = objFSO.OpenTextFile(strLog, 8, True, 0)
BuscaPasta objFolder
objLogFile.Close
Sub BuscaPasta(objeto)
Set colSubfolders = objeto.Subfolders
For Each objSubfolder in colSubfolders
arrTipos = split(objSubFolder.Path,"\")
if UBOUND(arrTipos) <= strMaxLog Then
Set objExec = WshShell.Exec("showacls " & """" & objSubFolder.Path & """")
strText = VBCRLF
strText = strText & "===================================================" & VBCRLF
strText = strText & "PASTA: " & objSubFolder.Path & " - TAMANHO : " & objSubFolder.SIze & " Kb" & VBCRLF
strText = strText & "===================================================" & VBCRLF
objLogFile.WriteLine strText
strResults = LCase(objExec.StdOut.ReadAll)
objLogFile.WriteLine strResults
buscaPasta objSubFolder
End if
Next
End Sub
Para usar o showacls, faça o download do resource kit windows 2003:
http://www.microsoft.com/Downloads/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&displaylang=en
Até mais,
Jesiel
Obs.: Se útil, classifique
- Marcado como Resposta Marcelo TI segunda-feira, 31 de agosto de 2009 22:18
Todas as Respostas
-
Olá,
Verifique o script abaixo:
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set WSHShell = WScript.CreateObject("WScript.Shell")
strLog = "log.txt"
'caminho da pasta que irá varrer
Set objFolder = objFSO.GetFolder("c:\")
'quantidade maxima de niveis
strMaxLog = 4
Set objLogFile = objFSO.OpenTextFile(strLog, 8, True, 0)
BuscaPasta objFolder
objLogFile.Close
Sub BuscaPasta(objeto)
Set colSubfolders = objeto.Subfolders
For Each objSubfolder in colSubfolders
arrTipos = split(objSubFolder.Path,"\")
if UBOUND(arrTipos) <= strMaxLog Then
Set objExec = WshShell.Exec("showacls " & """" & objSubFolder.Path & """")
strText = VBCRLF
strText = strText & "===================================================" & VBCRLF
strText = strText & "PASTA: " & objSubFolder.Path & " - TAMANHO : " & objSubFolder.SIze & " Kb" & VBCRLF
strText = strText & "===================================================" & VBCRLF
objLogFile.WriteLine strText
strResults = LCase(objExec.StdOut.ReadAll)
objLogFile.WriteLine strResults
buscaPasta objSubFolder
End if
Next
End Sub
Para usar o showacls, faça o download do resource kit windows 2003:
http://www.microsoft.com/Downloads/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&displaylang=en
Até mais,
Jesiel
Obs.: Se útil, classifique
- Marcado como Resposta Marcelo TI segunda-feira, 31 de agosto de 2009 22:18
-