Answers:
如果您不想安装任何东西,也可以使用以下命令:
for /f "delims=" %a in ('cd') do @for /f %b in ('dir /b /a') do @echo %a\%b
您必须先cd
进入目录,否则它将无法正常工作。
这是一个古老的问题,但我认为我还是会添加一些内容。
DIR不能正确遍历您想要的所有目录树,尤其是C:上的目录树。由于不同的保护措施,它只是在某些地方放弃了。
ATTRIB工作得更好,因为它可以找到更多。(为什么会有这种区别?为什么MS在这方面会使一个实用程序以一种方式工作而另一个使另一种工作有所不同?我知道该死。)以我的经验,处理此问题的最有效方法(虽然很麻烦)是获得两个清单:
attrib /s /d C:\ >%TEMP%\C-with-directories.txt
attrib /s C:\ >%TEMP%\C-without-directories.txt
并得到他们之间的区别。区别在于C:中的目录(隐藏得太深的目录除外)。对于C :,我通常会以管理员身份运行。
我想使用目录列表,因此我用Google搜索了“打印目录”。我找到了这样做的说明,但其中包括对注册表的更改。我不想涉足此事,不想使用清单而不是打印清单,所以我找到了一种无需更改注册表即可实现我的目标的方法。我创建了两个批处理文件程序,要保存在Utility Directory中。然后,当我要打印或使用目录时,只需将适当的批处理文件复制到主题目录中,然后执行即可!他们来了:
rem PrintThisDirectory.bat
rem Prints the directory where it resides
@echo off
dir %1/-p/o:gn> "%temp%\listing"
start /w notepad "%temp%\listing"
Rem ShowThisDirectory.bat
Rem Displays in Notepad the Directory where it resides
@echo off
dir %1/o:gn> "%temp%\listing"
start /w notepad "%temp%\listing"