我对基本编程非常陌生,并且遇到任务试图自动化。我发现了一些我已经能够使用的东西,但是这个问题相当具体,我还没有找到相当有效的东西。批处理文件 - 扫描源文件的源目录(folderA),然后将具有相同文件名的文件从文件夹B复制到文件夹C
我正在使用Sorenson Squeeze将视频文件编码成不同的格式。作为自动监视文件夹过程的一部分,当完成编码后,Sorenson会将源文件放置在“CompletedSource”文件夹中。我想要做的是创建一个批量文件,该文件可以按计划每小时运行一次,只有在“CompletedSource”文件夹中存在具有相同名称的文件时,才会将“Done”文件夹中的各种编码文件复制到第三个目录。这是为了避免使用计划的批处理文件,该文件只将所有文件从“完成”复制到归档文件中,包括当前正在处理的文件。我只想复制“完整”文件。
例如(当索伦森完全完成的编码工作):
CompletedSource文件夹将包含
12345.mov(或的.mp4)
完成文件夹将包含
12345_hd.mov,12345_high.mov,12345_high.mp4,12345_med.mp4,12345_lo w.mp4
我想在“完成”的所有.mov
文件复制到“QuickTime的”文件夹和所有.mp4
文件复制到“MP4”的文件夹。
我试图测试与低于看起来应该为MP4拷贝工作:
for %%F in ("C:\test\Done\\*.mp4") do if exist "C:\test\CompletedSource\%%~nF.*" echo copy "%%F" "C:\test\MP4"
然而,当我删除回声它实际上并没有复制文件。
为什么在文件掩码之前加倍反斜杠? 'C:\ test \ Done \\ * .mp4' – Compo
这里的预览是删除了单独的斜线,使其看起来像“C:\ test \ Done * .mp4”而不是“C:\ test \ Done \ *” .mp4“当我第一次打字时。我使用的测试代码只有一个斜线。 –