批处理文件,用于将文件夹中的文件名和 parent 目录的路径写入文本文件
Batch file to write names of files in a folder and the path of the parent directory to a text file
我正在尝试如标题所示,使用批处理文件将所有文件的名称和批处理文件所在的parent目录的路径复制到文本文件中。我搜索了以前的 post,但没有找到任何 post 可以解决我的问题。
到目前为止,我可以使用标题为 dir.bat
的以下批处理命令写入所有文件名(没有补丁或文件夹名称)位于 C:\Users\Username\Documents\FolderName
:
dir /b /a-d > fileslist.txt
这会在找到批处理文件的同一文件夹中输出一个文本文件:
dir.bat
fileslist.txt
New Text Document - Copy (2).txt
New Text Document - Copy (3).txt
New Text Document - Copy (4).txt
New Text Document - Copy (5).txt
New Text Document - Copy.txt
New Text Document.txt
有什么方法可以在批处理文件中添加一行,以便文本文件在开始或结束时具有 parent 目录的路径,如下所示:
C:\Users\Username\Documents\FolderName
dir.bat
fileslist.txt
New Text Document - Copy (2).txt
New Text Document - Copy (3).txt
New Text Document - Copy (4).txt
New Text Document - Copy (5).txt
New Text Document - Copy.txt
New Text Document.txt
这是我的第一个 post 所以如果我可以提供更多信息来帮助指导回复,请告诉我!提前致谢!
您的 dir
命令没有列出与批处理文件位于同一目录中的所有文件。它列出了当前工作目录中的所有文件。 您很幸运,您执行批处理文件的方法是使用批处理文件目录作为当前目录。
为了正确输出您需要的内容,我建议使用一个简单的衬里:
@(For %%G In ("%~dp0.") Do @Echo %%~fG& Echo(& Dir "%~dp0" /B /A:-D) 1>"filelist.txt"
我正在尝试如标题所示,使用批处理文件将所有文件的名称和批处理文件所在的parent目录的路径复制到文本文件中。我搜索了以前的 post,但没有找到任何 post 可以解决我的问题。
到目前为止,我可以使用标题为 dir.bat
的以下批处理命令写入所有文件名(没有补丁或文件夹名称)位于 C:\Users\Username\Documents\FolderName
:
dir /b /a-d > fileslist.txt
这会在找到批处理文件的同一文件夹中输出一个文本文件:
dir.bat
fileslist.txt
New Text Document - Copy (2).txt
New Text Document - Copy (3).txt
New Text Document - Copy (4).txt
New Text Document - Copy (5).txt
New Text Document - Copy.txt
New Text Document.txt
有什么方法可以在批处理文件中添加一行,以便文本文件在开始或结束时具有 parent 目录的路径,如下所示:
C:\Users\Username\Documents\FolderName
dir.bat
fileslist.txt
New Text Document - Copy (2).txt
New Text Document - Copy (3).txt
New Text Document - Copy (4).txt
New Text Document - Copy (5).txt
New Text Document - Copy.txt
New Text Document.txt
这是我的第一个 post 所以如果我可以提供更多信息来帮助指导回复,请告诉我!提前致谢!
您的 dir
命令没有列出与批处理文件位于同一目录中的所有文件。它列出了当前工作目录中的所有文件。 您很幸运,您执行批处理文件的方法是使用批处理文件目录作为当前目录。
为了正确输出您需要的内容,我建议使用一个简单的衬里:
@(For %%G In ("%~dp0.") Do @Echo %%~fG& Echo(& Dir "%~dp0" /B /A:-D) 1>"filelist.txt"