移动特定文件夹下的指定类型文件到指定目录

这篇本来打算不写的,因为在某些时候可以直接ctrl+c,ctrl+v直接解决问题,不过既然已经测试好了就发出了。

原本是准备用作文件的快速移动的,有时候文件夹比较深不想来回打开,就想着能不能直接进行移动,所以有了后面的测试

move "需要移动的文件路径" "文件夹路径"

这段是最简单的移动命令

然后看到了一些拓展的就一起整理了下,以下是对这段命令的“复杂化”对的,你没看错,改的有点偏离快速的初衷了。

@echo off
set /p "StartFolder=Which folder do you want to start from [like 初始文件夹路径]:"
set /p "FileType=What type of file to choose [like 文件后缀类型]:"
set /p "DstFolder=Which folder do you want to move to [like 移动位置的文件夹路径]:"
if not exist "%DstFolder%" (
    echo Not Find "%DstFolder%"
    goto :eof
)
for /f "delims=" %%i in ('dir /a-d /b %StartFolder%\*.%FileType%') do (
    copy "%%i" "%DstFolder%"
	echo " OK ! Move Complete !"
)
pause
下面是这段命令的运行测试:

1> 在指定需要移动的文件夹中建立了一些需要移动的文件,为了测试文件后缀的指定性所以有些不同类型的后缀。

2> 测试用的文件移动的目标文件夹,此时留空用来看移动效果。

3> 双击运行“move-file-to-new-folder.bat”文件,进入到命令行中,根据设定的提示进行内容的输入,在源文件中添加了默认的路径,方便复制,鼠标左键按住选择,右键点一下复制,再点下鼠标右键完成内容的复制。

4> 将路径,文件类型确定好之后回车运行,将会看到以下移动成功的结果。

在左侧的测试文件夹中可以看到,指定的txt类型的文件都已经移动过来了。

不知道你们注意到我在初始路径下留了一个文件夹不,其实也可以指定文件夹下所有文件和子目录中的所有文件进行移动,这是我唯一想到还算是便捷一些的再次补充了。已经测试完成过了,不想截图了,就直接告诉你们怎么加好了。

('dir /a-d /b %StartFolder%\*.%FileType%') 修改为 ('dir /a-d /s /b %StartFolder%\*.%FileType%')

这段应该是第九行代码的样子,替换下就行了。

0 条评论