.bat获取文件夹内所有文件的名字

一、最近想要获取文件夹内所有文件的名称,但是一个个的复制太麻烦了,所以决定写个脚本自动获取。

@echo off

:获取对应路径下文件名,
DIR "路径" /B >a.TXT

pause

二、命令白皮书

显示目录中的文件和子目录列表。

DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N]
  [/O[[:]sortorder]] [/P] [/Q] [/R] [/S] [/T[[:]timefield]] [/W] [/X] [/4]

  [drive:][path][filename]
              指定要列出的驱动器、目录和/或文件。

  /A          显示具有指定属性的文件。
  属性         D  目录                R  只读文件
               H  隐藏文件            A  准备存档的文件
               S  系统文件            I  无内容索引文件
               L  解析点             -  表示“否”的前缀
  /B          使用空格式(没有标题信息或摘要)。
  /C          在文件大小中显示千位数分隔符。这是默认值。用 /-C 来
              禁用分隔符显示。
  /D          跟宽式相同,但文件是按栏分类列出的。
  /L          用小写。
  /N          新的长列表格式,其中文件名在最右边。
  /O          用分类顺序列出文件。
  排列顺序     N  按名称(字母顺序)     S  按大小(从小到大)
               E  按扩展名(字母顺序)   D  按日期/时间(从先到后)
               G  组目录优先           -  反转顺序的前缀
  /P          在每个信息屏幕后暂停。
  /Q          显示文件所有者。
  /R          显示文件的备用数据流。
  /S          显示指定目录和所有子目录中的文件。
  /T          控制显示或用来分类的时间字符域。
  时间段      C  创建时间
              A  上次访问时间
              W  上次写入的时间
  /W          用宽列表格式。
  /X          显示为非 8.3 文件名产生的短名称。格式是 /N 的格式,
              短名称插在长名称前面。如果没有短名称,在其位置则
              显示空白。
  /4          用四位数字显示年

可以在 DIRCMD 环境变量中预先设定开关。通过添加前缀 - (破折号)
来替代预先设定的开关。例如,/-W。

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: 实现获取每个文件夹文件个数的方法,可以使用批处理(.bat)脚本来实现。下面是一种实现方法: @echo off setlocal enabledelayedexpansion set "folderPath=C:\Path\to\Folder" // 文件夹路径,根据实际情况进行修改 for /r "%folderPath%" %%G in (*) do ( set /a "count+=1" ) echo 文件夹:%folderPath% 中的文件个数为:%count% 将上述代码保存为扩展名为.bat文件,将"folderPath"替换为实际的文件夹路径。然后运行这个脚本,它将输出指定文件夹中的文件个数。 这个脚本通过使用“for /r”命令递归遍历指定的文件夹及其子文件夹中的所有文件,并使用"set /a"命令对计算器进行递增操作,以统计文件个数。最后,使用"echo"命令将统计结果输出到屏幕上。 注意:这个脚本将只统计文件数量,不包括文件夹的数量。如果需要同时统计文件夹文件的数量,可以将脚本进行修改。 ### 回答2: 可以使用以下方法来获取每个文件夹下的文件个数: 1. 首先,创建一个批处理文件(以.bat后缀),比如"count_files.bat"。 2. 在批处理文件中输入以下代码: ```shell @echo off setlocal enabledelayedexpansion for /d %%i in (*) do ( set count=0 for /r "%%i" %%f in (*) do ( set /a count+=1 ) echo 文件夹%%i下的文件个数为:!count! ) pause ``` 3. 保存并关闭批处理文件。 4. 在需要统计的文件夹中运行该批处理文件。 5. 执行文件后,将会逐个显示每个文件夹下的文件个数。 该批处理文件使用了两个内嵌的for循环。外层循环遍历当前目录的所有文件夹并赋值给变量%%i,内层循环用于统计指定文件夹下的文件个数。每次循环都将文件计数器(count)增加1,并在循环结束后输出结果。 注意:由于批处理是通过命令行界面运行的,因此在运行批处理文件后,命令行界面会在输出完结果后暂停,你可以按任意键继续执行或者直接关闭窗口。 ### 回答3: 可以使用以下的批处理脚本来获取每个文件夹下的文件个数: ``` @echo off setlocal enabledelayedexpansion set "folderPath=C:\目标文件夹的路径" for /d %%a in ("%folderPath%\*") do ( set "folderName=%%~nxa" set "fileCount=0" for %%b in ("%%a\*") do ( set /a "fileCount+=1" ) echo 文件夹 "!folderName!" 中的文件个数为: !fileCount! ) endlocal ``` 请将 `C:\目标文件夹的路径` 替换为你想要获取文件个数的目标文件夹的实际路径,并保存脚本为以 `.bat` 结尾的文件,双击运行即可。 脚本中首先将 `folderPath` 设置为目标文件夹的路径。然后通过 `for /d` 循环获取目标文件夹下的子文件夹,将文件夹的名称保存到变量 `folderName` 中。接着通过内嵌的 `for` 循环遍历文件夹中的文件,并使用 `set /a` 命令将文件个数累加到 `fileCount` 变量中。最后通过 `echo` 命令输出文件夹名称和对应的文件个数。 希望对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值