• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    vbs 列出该目录下所有文件和文件夹的类型,大小,和所有者
    GetOwner.VBS用法,在命令行下:GetOwner.vbs 目录名会在相应目录下生成一个TXT.TXT文件,内里列出该目录下所有文件和文件夹的类型,大小,和所有者
    注意:大小以MB为单位,小于1MB的就显示为0MB,

    以下是代码:

    G = WScript.arguments(0)
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    set txt = oFSO.CreateTextFile(G"TXT.txt",true) '嘿嘿,如果这个目录下刚好有一个TXT.txt文件,那就算你倒霉,
    不会有人真用这种名字来做文件名吧?真的啊,真的有啊?那你
    换地方吧~~~C: \TXT.TXT应该不会有了吧?
    set objWMI = GetObject("winmgmts:")
    Set oFiles = objWMI.ExecQuery("ASSOCIATORS OF {Win32_Directory.Name='"G"'}" "where ResultClass =
    CIM_logicalfile")
    For Each oFile In oFiles
    txt.WriteLine( "--------------------------------------------------------------")
    txt.WriteLine( oFile.name)
    txt.WriteLine( "Type: " oFile.FileType)
    if oFile.name = G"system volume information" then
    exit for
    end if
    if oFile.FileType="File Folder" then
    Set objFolder = oFSO.GetFolder(oFile.name)
    txt.WriteLine("Size: " Cint(objFolder.Size/1024/1024) "MB")
    else
    txt.WriteLine( "Size: " cint(oFile.FileSize/1024/1024) "MB")
    end if
    strFile = oFile.name
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:" "{impersonationLevel=impersonate}!\\" strComputer
    "\root\cimv2")
    Set colItems = objWMIService.ExecQuery ("ASSOCIATORS OF {Win32_LogicalFileSecuritySetting='" strFile
    "'}" " WHERE
    AssocClass=Win32_LogicalFileOwner ResultRole=Owner")
    For Each objItem in colItems
    if oFile.name = "system volume information" then
    exit for
    end if
    txt.WriteLine( "FileOwner: " objItem.AccountName)
    Next
    Next

    统计某用户在某目录下的文件和文件夹使用方法:
    脚本名 目录名 用户名
    如:
    owner.vbs d:\ lsj
    结果是在相应目录下生成一个文本文件
    格式如下:
    --------------------------------------------------------------
    d:\jcb-gx
    Type: File Folder
    Size: 22MB
    --------------------------------------------------------------
    d:\powerword 2003.rar
    Type: WinRAR 档案文件
    Size: 503MB
    --------------------------------------------------------------
    d:\txt.txt
    Type: Text Document
    Size: 0MB
    --------------------------------------------------------------
    d:\年 度 考 核 登 记 表2006版061225.doc
    Type: Microsoft Word 文档
    Size: 0MB
    --------------------------------------------------------------
    --------------------------------------------------------------
    --------------------------------------------------------------
    The TotalSize of All files lsj owns is: 525MB
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    以下为脚本代码:

    TotalSize = 0
    G = WScript.arguments(0)
    H = WScript.arguments(1)
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    set txt = oFSO.CreateTextFile(G"TXT.txt",true)
    set objWMI = GetObject("winmgmts:")
    Set oFiles = objWMI.ExecQuery("ASSOCIATORS OF {Win32_Directory.Name='"G"'}" "where ResultClass =
    CIM_logicalfile")
    For Each oFile In oFiles
    strFile = oFile.name
    Set objWMIService = GetObject("winmgmts:" "{impersonationLevel=impersonate}!\\.\root\cimv2")
    Set colItems = objWMIService.ExecQuery ("ASSOCIATORS OF {Win32_LogicalFileSecuritySetting='" strFile
    "'}" " WHERE
    AssocClass=Win32_LogicalFileOwner ResultRole=Owner")
    For Each objItem in colItems
    if objItem.AccountName = H then
    txt.WriteLine( "--------------------------------------------------------------")
    txt.WriteLine( oFile.name)
    txt.WriteLine( "Type: " oFile.FileType)
    if oFile.name = G"system volume information" then
    exit for
    end if
    S = 0
    if oFile.FileType="File Folder" then
    Set objFolder = oFSO.GetFolder(oFile.name)
    S= Cint(objFolder.Size/1024/1024)
    else
    S= Cint(oFile.FileSize/1024/1024)
    end if
    txt.WriteLine( "Size: " S "MB")
    TotalSize = TotalSize + S
    end if
    Next
    Next
    txt.WriteLine( "--------------------------------------------------------------")
    txt.WriteLine( "--------------------------------------------------------------")
    txt.WriteLine( "--------------------------------------------------------------")
    txt.WriteLine( "The TotalSize of All files "H" owns is: " TotalSize "MB")

    更新后:
    4.0版
    使用方法:
    脚本名 目录名
    脚本会在相应目录下生成几个与本机用户对应的TXT文件,每个文件列出相应用户所有文件和文件夹的类型大小,并在最
    后合总计算所有文件和文件夹的大小
    以下是代码:

    TotalSize = 0
    G = WScript.arguments(0)


    Set oFSO = CreateObject("Scripting.FileSystemObject")

    Set objWMI = GetObject("winmgmts:")
    Set oFiles = objWMI.ExecQuery("ASSOCIATORS OF {Win32_Directory.Name='"G"'}" "where ResultClass =
    CIM_logicalfile")

    Set objNetwork = CreateObject("Wscript.Network")
    strComputer = objNetwork.ComputerName
    Set colAccounts = GetObject("WinNT://" strComputer "")
    colAccounts.Filter = Array("user")


    For Each objUser In colAccounts
    H = objUser.Name
    A = G objUser.Name "txt.txt"
    Set txt = oFSO.CreateTextFile (A,true)

    For Each oFile In oFiles
    strFile = oFile.name
    Set objWMIService = GetObject("winmgmts:" "{impersonationLevel=impersonate}!\\.\root\cimv2")
    Set colItems = objWMIService.ExecQuery ("ASSOCIATORS OF {Win32_LogicalFileSecuritySetting='" strFile
    "'}" " WHERE AssocClass=Win32_LogicalFileOwner ResultRole=Owner")

    For Each objItem in colItems
    if objItem.AccountName = H then
    txt.WriteLine( "--------------------------------------------------------------")
    txt.WriteLine( oFile.name)
    txt.WriteLine( "Type: " oFile.FileType)

    if oFile.name = G"system volume information" then
    exit for
    end if

    S = 0

    if oFile.FileType="File Folder" then
    Set objFolder = oFSO.GetFolder(oFile.name)
    S= Cint(objFolder.Size/1024/1024)
    else
    S= Cint(oFile.FileSize/1024/1024)
    end if
    txt.WriteLine( "Size: " S "MB")
    TotalSize = TotalSize + S
    end if
    Next

    Next

    txt.WriteLine( "--------------------------------------------------------------")
    txt.WriteLine( "--------------------------------------------------------------")
    txt.WriteLine( "--------------------------------------------------------------")
    txt.WriteLine( "The TotalSize of All files "H" owns is: " TotalSize "MB")
    Next

    再次更新后:
    4.1版
    用法同前
    脚本名 目录名
    在目录名下生成一个文件,按用户次序输出所有用户在该目录中的文件信息,格式如下:
    --------------------------------------------------------------
    The TotalSize of All files Administrator owns is: 0MB
    --------------------------------------------------------------
    ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
    --------------------------------------------------------------
    The TotalSize of All files Guest owns is: 0MB
    --------------------------------------------------------------
    ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
    --------------------------------------------------------------
    The TotalSize of All files HelpAssistant owns is: 0MB
    --------------------------------------------------------------
    ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
    --------------------------------------------------------------
    d:\powerword 2003.rar
    Type: WinRAR 档案文件
    Size: 503MB
    --------------------------------------------------------------
    d:\年 度 考 核 登 记 表2006版061225.doc
    Type: Microsoft Word 文档
    Size: 0MB
    --------------------------------------------------------------
    d:\jcb-gx
    Type: File Folder
    Size: 22MB
    --------------------------------------------------------------
    The TotalSize of All files lsj owns is: 525MB
    --------------------------------------------------------------
    ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※
    --------------------------------------------------------------
    The TotalSize of All files SUPPORT_388945a0 owns is: 0MB
    --------------------------------------------------------------
    ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

    以下是代码:

    G = WScript.arguments(0)


    Set oFSO = CreateObject("Scripting.FileSystemObject")
    Set objWMI = GetObject("winmgmts:")
    Set oFiles = objWMI.ExecQuery("ASSOCIATORS OF {Win32_Directory.Name='"G"'}" "where ResultClass =
    CIM_logicalfile")

    Set objNetwork = CreateObject("Wscript.Network")
    strComputer = objNetwork.ComputerName
    Set colAccounts = GetObject("WinNT://" strComputer "")
    colAccounts.Filter = Array("user")


    For Each objUser In colAccounts
    TotalSize = 0
    H = objUser.Name
    Set TXT = oFSO.OpenTextFile(G"\TXT.TXT",8,true)

    For Each oFile In oFiles
    strFile = oFile.name
    Set objWMIService = GetObject("winmgmts:" "{impersonationLevel=impersonate}!\\.\root\cimv2")
    Set colItems = objWMIService.ExecQuery ("ASSOCIATORS OF {Win32_LogicalFileSecuritySetting='" strFile
    "'}" " WHERE AssocClass=Win32_LogicalFileOwner ResultRole=Owner")

    For Each objItem in colItems
    if objItem.AccountName = H then
    TXT.WriteLine( "--------------------------------------------------------------")
    TXT.WriteLine( oFile.name)
    TXT.WriteLine( "Type: " oFile.FileType)

    if oFile.name = G"system volume information" then
    exit for
    end if

    S = 0

    if oFile.FileType="File Folder" then
    Set objFolder = oFSO.GetFolder(oFile.name)
    S= Cint(objFolder.Size/1024/1024)
    else
    S= Cint(oFile.FileSize/1024/1024)
    end if
    TXT.WriteLine( "Size: " S "MB")
    TotalSize = TotalSize + S
    end if
    Next
    Next

    TXT.WriteLine( "--------------------------------------------------------------")

    TXT.WriteLine( "The TotalSize of All files "H" owns is: " TotalSize "MB")
    TXT.WriteLine( "--------------------------------------------------------------")
    TXT.WriteLine( "※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※")
    TXT.Close
    Next
    MsgBox "文件列表信息已成功输出至TXT.TXT文件",64,"OK"
    上一篇:VBS InternetExplorer.Application的属性和方法介绍
    下一篇:雷客图 站长安全助手 vbs版代码(asp 木马查找)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    vbs 列出该目录下所有文件和文件夹的类型,大小,和所有者 vbs,列出,该目,录下,所有,