批处理不捕获隐藏文件

批处理不捕获隐藏文件

以下几行允许我列出文件 TXT 中的所有文件、文件夹和子文件夹,但问题是隐藏文件未包含在文件 TXT 中。那么,我该怎么办?

@echo off
set /a VAR=%random%  
mkdir C:\Users\Blm\Desktop\folder\
for /r  E:\ %%i in (*) do (echo %%i >> C:\Users\Blm\Desktop\folder\%VAR%.txt)
pause

答案1

尝试替换此行:

for /r  E:\ %%i in (*) do (echo %%i >> C:\Users\Blm\Desktop\folder\%VAR%.txt)

有了这个:

dir /s/o/b /a E:\ > C:\Users\Blm\Desktop\folder\%VAR%.txt

答案2

dir /s /ah /b
  • /s包括sUB 文件夹
  • /ah包括H隐藏文件(属性,隐藏)
  • /bb格式(仅文件列表,没有大小或类型的列)

你不需要使用for循环来简单地列出目录树

您可以使用attrib /s /d而不是dir来实现类似的功能,但输出不同的内容来显示文件和文件夹的属性(例如它们是否是隐藏的、系统、存档类型的文件等)

您也可以考虑使用tree /f,以获得更好的输出格式,尽管不显示隐藏文件

相关内容