VBScript问题需要帮助

时间:2010-02-17 10:04:49

标签: vbscript

我需要一个可以在Windows操作系统(Windows Server 2003)上的任何驱动器上运行和提取信息的脚本,列出包含以下字段的所有文件和文件夹:服务器非常大,位于我们的域中。< / p>

所需信息是:

  • 完整文件路径(例如C:\ Documents and Settings \ user \ My Documents \ testPage.doc)
  • 文件类型(例如word文档,电子表格,数据库等)
  • 尺寸
  • 创建时
  • 上次修改时
  • 上次访问时

此外,脚本还需要将该数据转换为CSV文件,稍后我可以在Excel中进行修改和处理。我可以想象这个数据会很大但我仍然需要它。我以服务器上的管理员身份登录,脚本还需要处理受保护的文件。与之前的帖子一样,我已经读过,如果处理了这些文件,脚本将停止。我需要确保不会跳过任何文件。

请注意我之前已经问过这个问题,但仍然没有工作脚本。

这是我到目前为止的脚本,文件为Test.vbs:

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 Test.vbs "c:\" > "C:\test\Output.csv"

脚本无效。我不知道为什么。

1 个答案:

答案 0 :(得分:0)

使用Cscript

时,将cmd-line args正确传递给vbs

- 按如下方式修改cmd-line语句(删除“&gt;”)

c:\test> cscript //nologo Test.vbs "c:\" "C:\test\Output.csv"

- 在脚本内部,您可以访问cmd-line参数,如下所示

strFolder = WScript.Arguments.Item(0)
strFile = WScript.Arguments.Item(1)

我希望您现在可以访问这些文件并在csv文件中正确列出它们。 : - )

古德勒克!!
- CVS