Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Variables 如何使用for循环获取文件名,然后使用它们?_Variables_For Loop_Batch File_Text Files - Fatal编程技术网

Variables 如何使用for循环获取文件名,然后使用它们?

Variables 如何使用for循环获取文件名,然后使用它们?,variables,for-loop,batch-file,text-files,Variables,For Loop,Batch File,Text Files,我有一个文件夹,里面有a.txt、b.txt和c.txt文件。我想使用for循环获取这些文件的名称,将它们存储在一个变量中,然后将它们添加到另一个文本文件中。文本文件与我的bat文件位于同一个文件中。有可能这样做吗?如果是这样的话,请给我看看,这些循环把我搞糊涂了 我现在有什么 @echo on SET name=hey echo >text.txt for %F in (*.*) do (set name=@fname echo name >> tex

我有一个文件夹,里面有a.txt、b.txt和c.txt文件。我想使用for循环获取这些文件的名称,将它们存储在一个变量中,然后将它们添加到另一个文本文件中。文本文件与我的bat文件位于同一个文件中。有可能这样做吗?如果是这样的话,请给我看看,这些循环把我搞糊涂了

我现在有什么

  @echo on

  SET name=hey
  echo >text.txt

  for %F in (*.*) do (set name=@fname
  echo name >> text.txt)
注1:文件存储在“Filename”var中,但实际上并不需要,您可以直接将文件名写入textfile

注2:如果希望通过文件进行递归循环,请使用For命令的/R开关

注意3:如果还需要文件扩展名,请将此“%%~n#”更改为其他“%%~nx#”

备选脚本:

@Echo OFF
For %%# in (*.txt) do (Echo %%~n#>> "MyFiles.txt")
Pause&Exit

这只是打印了一个文本文件,上面写着“ECHO已打开”。它是通过一个文件夹获取文件名还是通过一个文件获取行?脚本工作,它通过工作文件夹启动并获取文件名,如果你想读取文本文件内容行的文件名,那么至少发布一个文本文件内容的示例,我们不是向导!不,这正是我想要它做的,但是当我把它放在一个新的bat文件中时,它会打印“MyFilenames”什么都没有。对不起,但是它太奇怪了。。。第一个代码没有任何奇怪的地方,它会工作,不管怎样,我已经发布了另一种方法,请参阅我的更新,该代码对我也有效。这是什么:
文本文件与我的bat文件位于同一个文件中。
该文件位于一个文件中??
**UPDATE:**
@Echo OFF
For %%# in (*.txt) do (Echo %%~n#>> "MyFiles.txt")
Pause&Exit