在一个示例中,使用它来提供完全保留的文件数,包括主目录列表中每个用户区域的所有子文件夹。我找到了将文件结构读入txt文件的方法。
user1有20个文件分布在他家乡的几个子目录中。我对子文件夹和文件计数的实际列表不感兴趣,我已经看到了答案,但由于我缺乏知识,我无法修改脚本 所以在这个例子中 - 主目录有99个用户,从user1到user99,每个用户都有各种子文件夹等
可以将如下输出提供到.txt文件中,该文件可以放入电子表格中。
Username # number of files
user1 # 20
user2 # 34
user3 # 93
user99 # 4
等等 - 双行间距纯粹是为了在一行上得到每个结果输出,我似乎无法用这个编辑器。
答案 0 :(得分:0)
试试这个
@echo off
cls
setlocal EnableDelayedExpansion
set "cmd=dir user1 /s /b | find /C ":""
for /f %%a in ('!cmd!') do set number=%%a
echo user1 # %number%
答案 1 :(得分:0)
使用FOR /D
迭代根文件夹中的用户。我将使用" C:\ USERS \"作为根。注意:您可能需要在具有管理员权限的控制台中运行。
对于每个用户,使用DIR
管道传输到FIND
来计算文件数。 DIR /A-D
选项仅列出文件,包括隐藏文件和系统文件。 /B
选项仅列出文件,没有任何标题或摘要信息。 /S
选项包括子目录。 FIND /C
选项会对匹配进行计数,/V ""
是一个与所有行匹配的奇怪功能。
从命令行:
for /d %U in (*) do @for /f %C in ('dir /s /b /a-d "%U"^|find /c /v ""') do @echo %U # %C
使用批处理脚本
@echo off
for /d %%U in (*) do for /f %%C in ('dir /s /b /a-d "%%U"^|find /c /v ""') do echo %%U # %%C