скрипт для извлечения информации из Windows Drive - PullRequest
0 голосов
/ 12 февраля 2010

Мне нужен скрипт, который мог бы запускать и извлекать информацию с любого диска в операционной системе Windows (Server 2003), перечисляя все файлы и папки, которые содержат следующие поля:

  • Полный путь к файлу (например, C: \ Documents and Settings \ user \ Мои документы \ testPage.doc)
  • Тип файла (например, текстовый документ, электронная таблица, база данных и т. Д.)
  • размер
  • При создании
  • При последнем изменении
  • При последнем доступе

Любая помощь приветствуется.

Спасибо

Ответы [ 2 ]

1 голос
/ 12 февраля 2010

попробуйте этот VBScript

Set objFS=CreateObject("Scripting.FileSystemObject")
Set objArgs = WScript.Arguments
strFolder = objArgs(0)
Set objFolder = objFS.GetFolder(strFolder)
Go (objFolder)
Sub Go(objDIR)
  If objDIR <> "\System Volume Information" Then
    For Each eFolder in objDIR.SubFolders
        Go eFolder
    Next   
  End If
    For Each strFile In objDIR.Files
        WScript.Echo "Full Path: " & strFile.Path
        WScript.Echo "File Size(bytes): " & strFile.Size
        WScript.Echo "File Date modified: " & strFile.DateLastModified
        WScript.Echo "File Date Created: " &  strFile.DateCreated
        WScript.Echo "File Date accessed: " & strFile.DateLastAccessed

    Next 
End Sub 

в командной строке

c:\test> cscript //nologo myscript.vbs c:\
0 голосов
/ 12 февраля 2010

Чтобы сохранить результаты в CSV-файле, измените код ghostdog74 следующим образом.

Set objFS=CreateObject("Scripting.FileSystemObject")
WScript.Echo Chr(34) & "Full Path" &_
 Chr(34) & ","  & Chr(34) & "File Size" &_
 Chr(34) & ","  & Chr(34) & "File Date modified" &_
 Chr(34) & "," & Chr(34) & "File Date Created" &_
 Chr(34) & "," & Chr(34) & "File Date Accessed" & Chr(34)
Set objArgs = WScript.Arguments
strFolder = objArgs(0)
Set objFolder = objFS.GetFolder(strFolder)
Go (objFolder)
Sub Go(objDIR)
  If objDIR <> "\System Volume Information" Then
    For Each eFolder in objDIR.SubFolders
        Go eFolder
    Next   
  End If
    For Each strFile In objDIR.Files
        WScript.Echo Chr(34) & strFile.Path & Chr(34) & "," &_
        Chr(34) & strFile.Size & Chr(34) & "," &_
        Chr(34) & strFile.DateLastModified & Chr(34) & "," &_
        Chr(34) & strFile.DateCreated & Chr(34) & "," &_
        Chr(34) & strFile.DateLastAccessed & Chr(34)
    Next 
End Sub 

Затем вызовите его из командной строки следующим образом.

c:\test> cscript //nologo myscript.vbs "c:\" > "C:\test\Output.csv"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...