我们知道,我们可以使用形如 mv /somewhere/*.mp4 /anotherwhere/
将同一个类型的多个文件从一个位置移动到另一个位置,而且这种方式只需一条命令就可以搞定。但是如果你有多个文件类型,比如有 mp3,txt,doc,等等多个类型文件,移动起来就可能稍微麻烦一些。
本文就介绍如何在 Linux 系统使用命令行移动多种类型的文件。
同时移动多种文件类型
方法1:
比如 dir1
的目录中存在各种类型的文件,比如 .pdf .doc .mp3 .mp4 .txt 等,我们首先使用 ls
命令来查看 dir1
中的具体有哪些文件:
$ ls dir1
file.txt image.jpg mydoc.doc personal.pdf song.mp3 video.mp4
某天,因为工作的需要你需要将某几种文件(但不是全部文件类型)移动到另外一个目录里。比如,你需要将所有的 doc,pdf 和 txt 文件同时移动到另一个名为 dir2
的目录中,你可以使用以下命令:
$ mv dir1/*.{doc,pdf,txt} dir2/
可以看到,我们只需将对应的文件类型放在花括号里即可。命令运行之后,我们再使用 ls
命令分别查看 dir1
及 dir2
目录中的文件,确认是否真的已经移动过来了。
$ ls dir1/
song.mp3 video.mp4
$ ls dir2/
file.txt mydoc.doc personal.pdf
从结果可以看到,dir1
目录里的 doc,pdf 和 txt 文件已经成功被移动到 dir2
目录里了。而 mp3,mp4 却没有被移动。
你可以将任意的文件类型放在上述命令里的花括号里,就可以将这些文件移动到另一个目录里,非常简单!
方法2:
第二种方法就简单粗暴一些。首先我们使用 cd
命令切换到源目录 dir1
:
$ cd ~/dir1
然后我们再把需要移动的文件扩展名全部列出来,同样使用 mv
命令:
$ mv *.doc *.txt *.pdf /home/alvin/dir2/
也就是说,需要移动特定扩展名的所有文件,例如 .doc 文件,使用类似下面的文件就可以了:
$ mv dir1/*.doc dir2/
对于 mv
命令的详细用法,可以参照它的 man
手册。
$ man mv