Batch file cmd.exe>&燃气轮机;具有文件夹名称的txt输出

Batch file cmd.exe>&燃气轮机;具有文件夹名称的txt输出,batch-file,cmd,Batch File,Cmd,至于下一步的进一步处理,我将使用以下cmd命令输出文本文件中的文件名: (for /F "usebackq delims=" %x in (`dir /B Input-Videos\2021_0324_163536_003.MOV Input-Videos\2021_0324_163637_004.MOV`) do echo file '%x' >> input.txt) input.txt中的输出为: file '2021_0324_163536_003.MO

至于下一步的进一步处理,我将使用以下cmd命令输出文本文件中的文件名:

(for /F "usebackq delims=" %x in (`dir /B Input-Videos\2021_0324_163536_003.MOV Input-Videos\2021_0324_163637_004.MOV`) do echo file '%x' >> input.txt)
input.txt中的输出为:

file '2021_0324_163536_003.MOV' 
file '2021_0324_163637_004.MOV' 
但是如何修改该命令以额外输出文件所在的文件夹Input Videos

输出应该如下所示:

file 'Input-Videos\2021_0324_163536_003.MOV' 
file 'Input-Videos\2021_0324_163637_004.MOV' 

这可以通过参数来完成吗?

从用法信息中读取输出怎么样,
for/?
?然后可以看到扩展修饰符
%~d
%~p
,以及
%~n
%~x
。虽然您已经知道了,但是您自己添加它有什么不对呢
echo file'Input Videos\%x'
?或者更好的
(对于%x in(“Input Videos\2021\u 0324\u 163536\u 003.MOV”“Input Videos\2021\u 0324\u 163637\u 004.MOV”)执行@echo file“%$x”)>“Input.txt”
,或者您只是没有向我们展示您真正想要做的事情,因为您确实不需要
循环来打印两个硬编码且已知文件路径的名称!我好像遗漏了什么。为什么要运行一个完整的for循环来回显这两个文件名,以及您已经硬编码的路径,您最好已经执行了
(回显文件'Input Videos\2021\u 0324\u 163536\u 003.MOV'&回显文件'Input Videos\2021\u 0324\u 16337\u 004.MOV')>Input.txt
,所以这没有什么意义。
dir/B
总是返回纯文件名,独立于您提供的path参数,并且没有任何开关可以更改此行为(除了
/S
,它也会查看子目录,但是
dir/S/B
始终返回完全绝对路径)…