【发布时间】:2016-10-20 19:04:24
【问题描述】:
假设我们在一个文件夹中有许多视频文件 (.mp4) 以及它们的字幕文件 (.srt),我想遍历所有文件,如果两个文件类型 ( mp4 & srt) 具有相同的名称,我想将它们移动到与它们中的任何一个具有相同名称的新文件夹中。如果文件夹存在,则移动,否则创建一个新文件夹。
我使用了两种方法来获取文件列表
@echo off
for %%a in (*.mp4 *.srt) do (
comparison here )
pause
和
@echo off
for /f "delims=" %%f in ('dir /b *mp4* *srt*') do (
comparison procedure )
pause
我尝试将扩展名 (mp4) 的每个文件名存储在一个变量中,以检查它与所有其他具有扩展名 (srt) 但不起作用的文件,我可以毫无问题地使用文本标记
有什么想法吗?
【问题讨论】:
-
如果文件夹存在且文件夹中已经存在文件,你想做什么?
-
跳过文件并移动到下一个
-
我会先遍历所有
*.mp4文件,然后检查是否存在同名的*.srt文件,如下所示:for %%F in (*.mp4) do if exist "%%~nF.srt" ( ... )(同样适用于for /F/@987654327 @版本) -
@aschipfl....获取 %%F 的名称部分并将 srt 添加到其中的好主意,让我们尝试一下
标签: batch-file cmd