9

我正在尝试创建一个批处理文件或其他脚本,以将一个文件夹的内容带到另一个目录中包含其名称的文件夹。例如:

ShowName.Episode.Title.mkv 应移至 \movies\showname。如果 \movies\showname\ 不存在,脚本将创建它。

平均每次需要移动 10-15 个文件。

有任何想法吗?

谢谢

4

2 回答 2

10

您可以有条件地创建文件夹:

if not exist \movies\showname mkdir \movies\showname

要将文件移入其中:

move ShowName.Episode.Title.mkv \movies\showname

要获取有关这些命令的更多信息,请打开命令提示符并键入:

help if

help move
于 2013-07-27T15:21:51.713 回答
5
@ECHO OFF
SETLOCAL
SET "sourcedir=c:\sourcedir"
SET "destdir=c:\destdir"
FOR /f "tokens=1-4delims=." %%a IN (
 'dir /b /a-d "%sourcedir%\*.*.*.mkv" '
 ) DO (
  MD "%destdir%\%%a" 2>NUL
  MOVE "%sourcedir%\%%a.%%b.%%c.%%d" "%destdir%\%%a\"
)
GOTO :EOF

这应该做你的动作。当然,您必须更改目录名称 - 不知道您的源目录在哪里,但目的地就\movies在您的情况下。

可能是一个先尝试的想法ECHO MOVE,只是为了确保移动是按要求的。

2>nul上的禁止MD显示目录已存在的错误消息。

添加>nulMOVE行尾将禁止显示该file moved消息。

于 2013-07-28T03:19:11.793 回答