相关疑难解决方法(0)

在什么时候`for`或`for/R`枚举目录(树)?

该命令for可用于枚举目录并对每个项目应用(a)某些命令.对于/R完整的目录树,可以实现相同的功能.

当枚举目录(树)的内容被命令体中的for命令改变时会发生什么?

假设我们的目录D:\data包含以下内容:

file1.txt
file2.txt
file3.txt
Run Code Online (Sandbox Code Playgroud)

for %F in ("*.txt") do echo %F在所述目录中执行的输出显然将反映上面的列表.

但是,forfor正文中的命令修改目录内容时,循环的输出是什么?例如,在file3.txt实际迭代之前,列表中的一个文件被删除了吗?或者,如果file4.txt在完成循环之前创建了一个新文件,例如?

for /R在这种情况下表现如何?假定有几个子目录sub1,sub2,sub3,每个包含的文件的上述列表; for /R目前正在迭代sub2,sub1已经处理,但sub3还没有; 那个时候的内容sub1sub3改变(当前正sub2如上所述走过的时候); 那将会列举什么?我猜,内容的变化sub1不会被识别,但是怎么样sub3

最后,在命令提示符或批处理文件中执行forfor /R执行时的行为是否存在差异?不同的Windows版本有差异吗?

注意:
另请参阅我关于该命令的类似问题forfiles.

for-loop cmd batch-file

6
推荐指数
1
解决办法
391
查看次数

标签 统计

batch-file ×1

cmd ×1

for-loop ×1