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

yizhihongxing

要讲解这个问题,我们需要对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日

相关文章

  • 解析Java虚拟机中类的初始化及加载器的父委托机制

    解析Java虚拟机中类的初始化及加载器的父委托机制 1. 类的加载过程 类的加载过程包含:加载、连接和初始化三个步骤。 加载过程:通过获取字节流,将.class文件放入内存,并产生一个代表该类的Class对象。 连接过程:分为验证、准备、解析三个阶段,其中解析阶段可能会涉及到类或接口的初始化。 初始化过程:为类的静态变量赋予正确的初始值,进行类构造器()方法…

    other 2023年6月20日
    00
  • PS怎么将图片变成拼图效果的图?

    要将一张图片变成拼图效果的图,可以使用Photoshop软件,以下是详细攻略: 步骤一:打开图片 在Photoshop中,找到“文件”菜单,选择“打开”,在弹出的文件选择框中选择需要编辑的图片,点击“打开”按钮即可打开该图片。 步骤二:新建图层 在Photoshop中,找到“图层”菜单,选择“新建”,在弹出的菜单中选择“图层”,输入图层名称,点击确定。 步骤…

    other 2023年6月27日
    00
  • RecyclerView使用payload实现局部刷新

    ist) : RecyclerView.Adapter() { // … 其他方法 … override fun onBindViewHolder(holder: ViewHolder, position: Int, payloads: MutableList<Any>) { if (payloads.isEmpty()) { // pa…

    other 2023年8月23日
    00
  • Java中二维数组的正确使用方法介绍

    Java中二维数组的正确使用方法介绍 在Java中,二维数组是一种常见的数据结构,它是由多个一维数组组合而成,通常用于存储表格、地图等数据,本文将介绍Java中二维数组的正确使用方法。 定义二维数组 在Java中可以使用以下语法定义一个二维数组: int[][] array = new int[row][col]; 其中,row表示数组的行数,col表示数组…

    other 2023年6月25日
    00
  • Java集合的Collection接口和List接口详解

    Java集合的Collection接口和List接口详解 Collection接口概述 Java中的集合类是用来存储和操作一组对象的类。它们可以在必要的时候自动增长或缩小,很容易添加或删除对象,而无需考虑数组的长度问题。Java的集合框架提供了一组接口、实现类和算法,可以轻松地处理集合中的元素。其中,Collection是所有集合类的祖先接口。 Collec…

    other 2023年6月27日
    00
  • intellijidea2018激活

    以下是关于“IntelliJ IDEA 2018激活”的完整攻略,包括基本概念、步骤和两个示例。 基本概念 IntelliJ IDEA是一款由JetBrains开发的Java集成开发环境(IDE),它提供了丰富的功能和工具,帮助开发人员更高地开发Java应用程序。IntelliJ IDEA 2018是IntelliJ IDEA的一个版本,它在2018年发布。…

    other 2023年5月7日
    00
  • 怎么免费获取2021最新office2016专业增强版永久激活密钥/序列号

    很抱歉,但我不能提供关于非法获取软件激活密钥或序列号的指导。这种行为违反了软件的版权法律,并且可能导致法律后果。我鼓励您遵守法律和道德准则,购买正版软件或使用免费的合法替代品。 如果您需要使用办公软件,但不想花费太多金钱,可以考虑以下合法的替代方案: 使用免费的办公套件:有许多免费的办公套件可供选择,如LibreOffice、OpenOffice和Googl…

    other 2023年7月28日
    00
  • python第4章pandas统计分析基础操作题:读取mtcars数据集

    在Python的pandas库中,我们可以使用read_csv()函数来读取CSV文件中的数据。本攻略将详细介绍如何使用read_csv()函数来读取mtcars数据集。 问题描述 我们需要读取mtcars数据集,该数据集包含了32种不同的汽车的性能数据,包括燃油效率、马力、速度等。该数据集以CSV格式存储。 解决方法 要解决“读取mtcars数据集”的问题…

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