DOS批处理文件,用于移动名称中包含给定单词的文件

时间:2012-06-02 06:27:50

标签: batch-file dos

我在Windows的一个目录中有一组文件,例如:

"file 01 WP2001.pdf"
"file 02 WP2012.pdf"
"file 03 AR2009.pdf"

我想将名称中包含字符串“WP”(区分大小写)的所有文件(即文件01和02)移动到现有文件夹中。

3 个答案:

答案 0 :(得分:2)

来自批处理文件

for /f "eol=: delims=" %%F in ('dir /b^|find "WP"') do move /Y "%%F" "someFolder"

如果从命令行运行,则将%% F更改为%F

答案 1 :(得分:0)

试试这个:

如果您已创建目录,则已使用此代码

setlocal ENABLEDELAYEDEXPANSION
set /a c=0
FOR %%i in (WP*.pdf) do (
set /a c=c+1
move "%%i" "file 0"!c!
)
endlocal


如果您有创建的目录,请使用此代码

setlocal ENABLEDELAYEDEXPANSION
set /a c=0
FOR %%i in (WP*.pdf) do (
set /a c=c+1
md "file 0"!c!
move "%%i" "file 0"!c!
)
endlocal
  1. 将此代码粘贴到记事本中并另存为批处理文件
  2. 将批处理文件复制到pdf文件和目录所在的目录。
  3. 现在点击Batch file.Done。

答案 2 :(得分:0)

如果您需要复制的文件名称遵循相同的模式(file,后跟一个空格,后跟两个字符,后跟一个空格,后跟WP,后跟四个字符,然后是.pdf扩展名,您可以使用此单COPY命令:

COPY "source_directory\file ?? WP????.pdf" "destination_directory"