我需要使用命令提示符(注意:没有子文件夹文件)目录中的文件和文件夹列表,格式为ie。 文件名 - 大小 - 文件类型。
我尝试使用dir /A/S >AllFiles.txt
。但输出的格式需要编辑。
答案 0 :(得分:0)
仅使用“dir”命令无法实现。 Powershell的get-childitem可以解决这个问题。
get-childitem -recurse | Select-Object basename, length, extension
假设你是从cmd运行的,你可以将上面的powershell命令行包装起来:
powershell -Command "get-childitem -recurse | Select-Object basename, length, extension"
要查看Select-Object子句的所有可用选项,您可以运行
get-childitem | get-member
在powershell中
答案 1 :(得分:0)
我不确定你的文件类型是什么意思。我假设你的意思是文件扩展名。
没有一种简单的方法来获取文件夹的总大小,因此我将文件夹列为name - <dir>
。
-
在文件和文件夹名称中有效。替换:
可能会更好。
简单的FOR命令列出文件或文件夹,但不能同时列出两者。所以下面我使用两个FOR命令。这样做的好处是它支持名称中的unicode。
@echo off
(
for %%F in (*) do echo %%F - %%~zF - %%~xF
for /d %%F in (*) do echo %%F - ^<dir^>
)>AllFiles.txt
您可以将DIR / B与FOR / F组合在一起获取文件和文件夹,但它不支持名称中的unicode。
@echo off
(
for /f "eol=: delims=" %%F in ('dir /b') do (
if exist "%%F\" (echo %%F - ^<dir^>) else (echo %%F - %%~zF - %%~xF)
)
)>AllFiles.txt