Windows 我需要一个批处理文件,将创建一个基于文本文件的文本文件目录

Windows 我需要一个批处理文件,将创建一个基于文本文件的文本文件目录,windows,batch-file,Windows,Batch File,我想要一个批处理文件,它读取文本文件的每一行,并创建一个空白文本文件,其名称与文本文件中的每一行对应,而不考虑空格,然后将它们放入C:\temp。我应该能够将文本文件拖到批处理文件上,使其生成所有内容 例如: 原始文本文件sample.txt显示: 这是一个文件(哈哈) 这是另一个文件 我需要这个文件 这将在目录C:\temp中创建这三个文件: 这是一个文件(哈哈).txt 这是另一个file.txt文件 我需要这个文件..txt 我认为应该是这样的: for /f %%i in (c:\tem

我想要一个批处理文件,它读取文本文件的每一行,并创建一个空白文本文件,其名称与文本文件中的每一行对应,而不考虑空格,然后将它们放入C:\temp。我应该能够将文本文件拖到批处理文件上,使其生成所有内容

例如: 原始文本文件sample.txt显示:

这是一个文件(哈哈)

这是另一个文件

我需要这个文件

这将在目录C:\temp中创建这三个文件:

这是一个文件(哈哈).txt

这是另一个file.txt文件

我需要这个文件..txt

我认为应该是这样的:

for /f %%i in (c:\temp\sample.txt) do echo %%i > "c:\temp\%%i.txt" 
for /f "tokens=*" %%i in (c:\temp\sample.txt) do copy /y nul "c:\temp\%%i.txt"
但这只为文本文件中的第一个单词生成一个文件,而不是每行。 请提供帮助。

您需要添加“tokens=*”选项,以便它接受空格等字符。您的代码如下所示:

for /f %%i in (c:\temp\sample.txt) do echo %%i > "c:\temp\%%i.txt" 
for /f "tokens=*" %%i in (c:\temp\sample.txt) do copy /y nul "c:\temp\%%i.txt"

我在问题中写的那行用引号括起文件名作为开始。“c:\temp\%%i.txt”尝试添加“tokens=*”选项您希望文本文件的内容是什么?它们是否应该包含它们的名称,以便从
c:\temp\sample.txt
中删除原始行?这就是您的代码所做的,假设您添加了
“tokens=*”
选项…@aschipfl我只想要空文本文件。我想从sample.txt的每一行中提取每个空的文件名。如前所述,我意识到如果我可以将任何文本文件拖放到批处理文件上,而不仅仅是c:\temp\sample.txt,效果会更好。