gpt4 book ai didi

dos - 还报告了目录中的文件数以及子目录中的文件数

转载 作者:行者123 更新时间:2023-12-02 22:41:46 24 4
gpt4 key购买 nike

我希望 DOS 命令查找给定目录中的文件计数(该计数应针对该目录下的子目录具有单独的条目)。

例如,如果 Tech 是一个目录,它有 2 个文件和 2 个子目录(Info Tech、Services),每个子目录有 2 个文件,我的结果应该是这样的

Tech 6
Info Tech 2
Services 2

如果有人能用这样的命令行帮助我就好了......

最佳答案

您的要求不明确。

我假设对于每个文件夹,您需要文件夹中的文件总数,包括子文件夹中的文件(递归)。您想要对根文件夹以及所有子文件夹(递归)进行计算。

此代码适用于从 XP 开始的所有 Windows 版本。我不确定它是否适用于真正的 MS-DOS。你真的在使用 MS-DOS 吗?

@echo off
setlocal disableDelayedExpansion
if "%~1"=="" (call :recurse ".") else call :recurse %1
exit /b

:recurse
setlocal
set fileCnt=0
for /d %%D in ("%~1\*") do call :recurse "%%~fD"
for /f %%A in ('dir /b /a-d "%~1\*" 2^>nul ^| find /v /c ""') do set /a fileCnt+=%%A
echo "%~f1" %fileCnt%
(
endlocal
set /a fileCnt+=%fileCnt%
)
exit /b

代码从下往上列出文件夹和文件数。如果您想要自上而下列出的文件夹,则只需对结果进行排序。假设批处理脚本名为fileCnt.bat,则

fileCnt | sort

关于dos - 还报告了目录中的文件数以及子目录中的文件数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10702326/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com