标题: [文本处理] [已解决]求批处理列出当前文件夹所有文件夹里面的文件数量,包含子文件夹 [打印本页]
作者: 未知2022 时间: 2022-3-31 18:54 标题: [已解决]求批处理列出当前文件夹所有文件夹里面的文件数量,包含子文件夹
举例,
比如我打开某个文件夹,里面一级文件夹是这样的
RAVAntivirus
Reference Assemblies
Rockstar Games
SQLite Expert
Uninstall Information
最终结果
444RAVAntivirus
66464Reference Assemblies
66455Rockstar Games
7565SQLite Expert
5666Uninstall Information
其数字是里面每一个文件夹里面包含子文件夹的文件的数量
目前我有一个bat,但是他仅仅会给出这里面一级目录,不会包含子文件夹
比如RAVAntivirus目录实际上有444文件,但是打开第一层目录只有1个文件,结果就只有1而不是444
求大佬帮帮忙,求之前已经找了很久了
作者: buyiyang 时间: 2022-3-31 19:27
本帖最后由 buyiyang 于 2022-3-31 19:37 编辑
- @echo off
- set /p ml=请输入包含路径的目录:
- cd /d "%ml%"
- set n=0
- for /f "delims=" %%i in ('dir /a-d /b /s') do set /a n+=1
- echo 该目录共有%n%个文件
- pause>nul
复制代码
作者: Batcher 时间: 2022-3-31 20:21
回复 1# 未知2022
test_1.bat- @echo off
- cd /d "%~dp0"
- setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir /b /ad') do (
- set n=0
- for /f "delims=" %%j in ('dir /b /s /a-d "%%i"') do (
- set /a n+=1
- )
- echo !n!%%i
- )
- pause
复制代码
作者: Batcher 时间: 2022-3-31 20:23
回复 1# 未知2022
test_2.bat- @echo off
- cd /d "%~dp0"
- setlocal enabledelayedexpansion
- for /f "delims=" %%i in ('dir /b /ad') do (
- for /f "tokens=1 delims=:" %%j in ('dir /b /s /a-d "%%i" ^| findstr /n .*') do (
- set n=%%j
- )
- echo !n!%%i
- )
- pause
复制代码
作者: went 时间: 2022-3-31 20:28
显示正确就把第8行的REM删掉- @echo off & cd /d "%~dp0"
- setlocal enabledelayedexpansion
- for /d %%i in (*) do (
- echo %%i
- set "file_num="
- for /f %%a in ('dir /s /a-d "%%i\*" ^| findstr "个文件"') do set "file_num=%%a"
- echo !file_num!%%i
- REM rename "%%i" "!file_num!%%i"
- echo -------------
- )
- pause&exit
复制代码
作者: 未知2022 时间: 2022-3-31 20:42
回复 4# Batcher
老大给的两个都测试了,不成功,没有正确的提示,
不过楼下的大大给的代码测试成功了
作者: buyiyang 时间: 2022-3-31 20:55
本帖最后由 buyiyang 于 2022-3-31 21:03 编辑
回复 6# 未知2022
大佬可能有点疏忽,没有找子目录,但我测试了代码是对的- @echo off
- setlocal enabledelayedexpansion
- cd /d "%~dp0"
- for /f "delims=" %%i in ('dir /ad /b') do (
- set n=0
- for /f "delims=" %%j in ('dir /a-d /b /s "%%i"') do (
- set /a n+=1
- )
- echo !n!%%i
- )
- pause>nul
复制代码
作者: 未知2022 时间: 2022-3-31 21:04
回复 7# buyiyang
没有评分了,感谢老哥的回复,上面的已经解决了
作者: Batcher 时间: 2022-3-31 21:21
回复 6# 未知2022
谢谢提醒,以添加 /s 参数。
作者: 未知2022 时间: 2022-3-31 21:32
回复 9# Batcher
好的,感谢各位大大的回复!!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |