在记事本中列出目录中的所有文件时出现问题

在记事本中列出目录中的所有文件时出现问题

使用这里已经有答案了

有用只有一个区别。运行dir /B会正确返回所有文件的名称。

现在,当我运行时,dir /B > someFile.txt它会创建一个文件,但也会在文件末尾.txt附加名称。someFile

请看这个

这种行为让我有点困惑。这意味着它.txt在列出文件名之前先创建了文件。

难道不应该反过来吗?请指教。

此外,我发现cmd它非常有趣,想了解更多关于它及其命令的信息。您能否参考一些指南/文章/文档?那将非常有帮助。谢谢 :)

答案1

我认为摆脱内部someFile.txt本身的最简单方法是提供另一个目录的绝对或相对路径。

例如,假设您dir在 内运行C:\Users\bosse。然后您可以选择将文件定位在此目录之外的其他地方,并且不会包含它。假设在您的C:\tmp目录中。

使用绝对路径:
C:\Users\bosse>dir /B > C:\tmp\someFile.txt

使用相对路径:
C:\Users\bosse>dir /B > ..\..\tmp\someFile.txt

在这种情况下,当您打开它时,C:\tmp\someFile.txt它不应包含它自己的名称。

如果您不熟悉,可以在这里阅读更多有关绝对路径和相对路径的信息。
Windows 文件路径格式

虽然目标文件不需要存在并且将被创建,但请注意目录路径必须提前存在。
dir可用于检查路径是否存在。
dir [<drive>:]<path>
如果目录路径不存在,则可以通过以下方式创建建立目录
mkdir [<drive>:]<path>

相关内容