allfiles.vbs 显示子目录下的所有文件的修改时间、大小、文件名、扩展名等

要讲解这个问题,我们需要对allfiles.vbs脚本进行一定的解读和分析。

1. allfiles.vbs的作用

allfiles.vbs脚本的作用是显示某一目录下及其子目录下所有文件的修改时间、大小、文件名和扩展名等信息。这个脚本相当于一个目录遍历器,可以帮助我们快速地了解目录下的文件情况。

2. 如何使用allfiles.vbs

使用allfiles.vbs非常简单,只需要在命令行中输入以下命令:

cscript allfiles.vbs "目录路径"

其中,目录路径是你需要显示文件信息的目录。

例如,如果我们需要显示D盘下所有文件的信息,只需要在命令行中输入:

cscript allfiles.vbs "D:\"

3. allfiles.vbs源代码的解析

下面是allfiles.vbs的源代码:

Option Explicit

Dim Fso, FolderObj, ObjFolder, Files
Dim Fld, BaseFolder, Recursive

Set Fso = CreateObject("Scripting.FileSystemObject")

Set FolderObj = WScript.Arguments
BaseFolder = FolderObj.Item(0)

Recursive = True

Set ObjFolder = Fso.GetFolder(BaseFolder)
Set Files = ObjFolder.Files

Wscript.Echo "Path: " & ObjFolder.Path
Wscript.Echo "------------------------------------------"
WScript.Echo "Filename" & vbTab & "Size" & vbTab & "Date Modified"

For Each Fld In Files
    Wscript.Echo Fld.Name & vbTab & Fld.Size & vbTab & Fld.DateLastModified
Next

If Recursive Then
    RecursiveFolder ObjFolder
End If

Sub RecursiveFolder(Folder)
    Dim SubFolders, SubFolder

    Set SubFolders = Folder.SubFolders

    For Each SubFolder In SubFolders
        Set Files = SubFolder.Files
        WScript.Echo ""
        Wscript.Echo "Path: " & SubFolder.Path
        Wscript.Echo "------------------------------------------"
        WScript.Echo "Filename" & vbTab & "Size" & vbTab & "Date Modified"

        For Each Fld In Files
            Wscript.Echo Fld.Name & vbTab & Fld.Size & vbTab & Fld.DateLastModified
        Next

        RecursiveFolder SubFolder
    Next
End Sub

这段代码比较短,逻辑也比较清晰,我们可以逐行来解析它:

  1. 第一行“Option Explicit”是指明强制声明变量,这是一种良好的编程习惯,可以帮我们发现一些编程错误。

  2. 第二行到第六行是定义一些变量,其中“FolderObj = WScript.Arguments”是为了获取命令行中输入的目录路径,这里调用了WScript对象的Arguments属性。

  3. 第8行到第16行是输出第一级目录下的文件信息,这部分比较简单,就不做赘述。

  4. 第18行到第25行是一个递归函数,用于显示子目录下的文件信息。其中“Set SubFolders = Folder.SubFolders”是获取目录下的子目录,然后通过一个循环遍历每个子目录,递归调用RecursiveFolder函数,一直到所有目录都被遍历完为止。

4. 示例说明

下面是两个示例,演示如何使用allfiles.vbs。

第一个示例,我们需要显示D盘根目录下所有文件的信息。我们可以在命令提示符中输入以下命令:

cscript allfiles.vbs "D:\"

这时,我们就可以看到所有文件的信息了。

第二个示例,我们需要显示C盘根目录下所有文件的信息,并且包括子目录下的文件。我们可以在命令提示符中输入以下命令:

cscript allfiles.vbs "C:\" /s

这时,我们就可以看到所有文件的信息,包括子目录下的文件信息。需要注意的是,“/s”参数可以开启递归遍历。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:allfiles.vbs 显示子目录下的所有文件的修改时间、大小、文件名、扩展名等 - Python技术站

(0)
上一篇 2023年6月26日
下一篇 2023年6月26日

相关文章

  • c语言实现两个单链表的交叉合并方式

    实现两个单链表的交叉合并可以通过以下步骤完成: 首先,定义两个单链表的结构体,可以使用以下代码示例: typedef struct Node { int data; struct Node* next; } Node; Node* head1 = NULL; Node* head2 = NULL; 然后,为两个链表分别添加一些节点,可以使用以下代码示例: /…

    other 2023年6月27日
    00
  • 计算机ip地址设置 自动获取IP和静态IP

    计算机IP地址设置攻略 IP地址是计算机在网络中的唯一标识,它可以通过两种方式进行设置:自动获取IP和静态IP。下面是详细的攻略,包含了两个示例说明。 自动获取IP 自动获取IP是指计算机通过动态主机配置协议(DHCP)从网络中的路由器或服务器自动获取IP地址。这是最常见的设置方式,适用于大多数家庭和办公网络。 以下是设置自动获取IP的步骤: 打开计算机的网…

    other 2023年7月29日
    00
  • Java类和成员变量声明类详解

    《Java类和成员变量声明类详解》 简介 本篇攻略主要详解Java中的类和成员变量声明,包括如何定义类、类的成员变量、访问修饰符以及类的实例化等。 声明类 在Java中,定义类需要使用class关键字,通常的类定义格式如下: 访问修饰符 class 类名 { // 成员变量 // 构造方法 // 成员方法 } 其中访问修饰符用于控制类的访问范围。Java中的…

    other 2023年6月27日
    00
  • java 基础之JavaBean属性命名规范问题

    Java基础之JavaBean属性命名规范问题攻略 1. 什么是JavaBean JavaBean是一种Java语言编写的可重用组件,符合特定的命名规范和规则。JavaBean主要用于封装数据,具备一定的属性和方法,以便在不同的应用中进行传递和操作。 2. JavaBean属性命名规范 在JavaBean中,属性命名需要遵循一定的规范,以保证代码的可读性和一…

    other 2023年6月28日
    00
  • win10系统不显示文件名和菜单项的两种解决方法

    下面我来详细讲解“win10系统不显示文件名和菜单项的两种解决方法”的完整攻略。本攻略分为以下两部分: 一、win10系统不显示文件名的解决方法 1. 打开文件夹选项- 在Windows资源管理器中,点击“查看”选项卡;- 然后在页面底部找到“选项”按钮,点击;- 弹出“文件夹选项”窗口后,点击“查看”选项卡;- 在列表中找到“隐藏已知文件类型的扩展名”选项…

    other 2023年6月26日
    00
  • Javascript 继承机制的实现

    JavaScript 继承机制的实现是JS的一大特色,它可以实现不同程度抽象和灵活的代码复用。下面是实现JS继承机制的完整攻略及示例说明。 一、继承机制介绍 在JavaScript中,我们可以通过原型和构造函数来实现继承关系,它有以下三种方式: 原型链继承:通过设置子类构造函数的原型对象指向父类的实例来实现继承。 function Parent() {} f…

    other 2023年6月26日
    00
  • C语言 详解字符串基础

    C语言详解字符串基础 在 C 语言中,字符串是一组字符的序列。字符串是以 ‘\0’(空字符)作为结尾的一维字符数组,例如下面是一个以 ‘\0’ 结尾的 C 字符串:”hello world”。 char str[] = "hello world"; 字符串与字符数组的主要区别在于其结尾以 ‘\0’ 为止,因此 C 语言提供了一组标准库函数…

    other 2023年6月20日
    00
  • C语言数据结构之单向链表详解分析

    C语言数据结构之单向链表详解分析 什么是单向链表? 单向链表是一种常见的数据结构,它由一系列节点(或称单元)组成,每个节点都包含两个数据域:数据和指针。其中,数据用于存储具体的数据信息,指针则用于指向下一个节点。这样,一个链表就可以看做是由一个一个节点链接而成的数据结构。而单向链表中的指针只能指向下一个节点,因此被称为单向链表。 如何使用单向链表? 单向链表…

    other 2023年6月27日
    00
合作推广
合作推广
分享本页
返回顶部