[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 yhcfsr 于 2018-7-7 13:35 编辑

批处理一:
进入一级子目录,再进入二级子目录,获取二级子目录的文件个数.
输出结果:     二级子目录:二级子目录的文件个数
批处理二:
进入一级子目录,再进入二级子目录,获取二级子目录的文件个数.
输出结果:     一级子目录:二级子目录的文件个数

所以你说的目录上移一级到底是要干什么?
第一个脚本功能算是正常人的思维;至于第二个脚本,如果一级子目录下有文件,那么你的结果就是错的.难道你上移一级的意思,是显示一级子目录下所有文件个数吗?
  1. @echo off
  2. echo 正在统计中。。。
  3. (for /d %%a in (*) do (
  4. pushd "%%~a"
  5. call set Num=0
  6. for /r %%c in (*) do (
  7. call set /a Num+=1
  8. )
  9. call echo %%~a:%%Num%% 个文件
  10. popd
  11. ))>"%~dp0日志.txt"
  12. pause
复制代码
QQ 33892006

TOP

本帖最后由 yhcfsr 于 2018-7-8 21:28 编辑
  1. @echo off
  2. rem 三级目录:三级目录文件个数
  3. set "txt1=%~dp0日志3-3.txt"
  4. rem 二级目录:三级目录文件总数
  5. set "txt2=%~dp0日志2-3.txt"
  6. echo 正在统计中。。。
  7. for /d %%a in (*) do (
  8. ::一级子目录
  9. pushd "%%~a"
  10. for /d %%b in (*) do (
  11. ::二级子目录
  12. pushd "%%~b"
  13. set "Sum=0"
  14. for /d %%c in (*) do (
  15. ::三级子目录
  16. pushd "%%~c"
  17. set "Num=0"
  18. for /r %%d in (*) do call set /a "Num+=1"
  19. >>"%txt1%"  call echo %%~c:%%Num%% 个文件
  20. call set /a Sum+=%%Num%%
  21. popd
  22. )
  23. >>"%txt2%" call echo %%~b:%%Sum%% 个文件
  24. popd
  25. )
  26. popd
  27. )
  28. pause
复制代码
1

评分人数

QQ 33892006

TOP

回复 7# a6236130


已改.见5楼.
QQ 33892006

TOP

返回列表