2016-01-31 29 views
0

我不熟悉脚本,因此这可能很简单。cmd - 将1个文件名导出到txt

如何将目录中的一个文件的名称导出为文本文件?我知道dir> text_file.txt将输出目录中的所有文件的列表,但我需要这个来创建一个循环,将单独打印每个文件名。

在此先感谢。

+0

要将哪个名称发送到文本文件?第一个?最后一个?第二十六号?每个名称都应该有自己的文本文件吗? – SomethingDark

+0

@SomethingDark我需要单独编写每个文件。最终结果将是文本文件中的文件名和相应的值。所以它会是 joebegborg07

+1

而且'dir> file.txt'不是你想要的吗?你的问题不会区分它的输出和你想要的输出。请编辑您的问题,以包含您实际寻找的内容。 – SomethingDark

回答

1

含糊不清的问题略有含糊。

for /r %%G in (*) do echo %%G 

得到公正,让说.txt文件,请使用:

for /r %%G in (*.txt) do echo %%G 
如果你想添加更多命令

更好的格式:

for /r %%G in (*) do (
    echo Full path : %%G 
    echo Name/Ext : %%~nxG 
) 

编辑:

继承人一种方式来做你所需要的在当前目录中的所有文件回显到文本文件:

rem first delete existing output files to clear them. 
del full_path.txt >nul 
del name_and_ext.txt >nul 

for /r %%G in (*) do (
    echo %%G >> full_path.txt 
    echo %%~nxG >> name_and_ext.txt 
) 

请编辑此,但请您。

请注意;

rem this will override all content in file.txt with !variable! 
echo !variable! > file.txt 

rem this will add the content of !variable! to new lines accordingly 
echo !variable! >> file.txt 
+0

注意:如果文件名被写入文件,它需要有一个名称不符合指定的通配符路径(在本例中为'*'),或者它需要位于不同的目录中。 – lit

+0

感谢您的回复,但是这不允许我在另一个文本文件中输出所有文件名。它只将最后的结果输出到文件名。是否有可能将所有文件名输出到文本文件? – joebegborg07

+0

@ joebegborg07你是什么意思?没有任何代码输出到文件。 – Squashman