正如老徐所说,实际使用linux工作中,我们经常需要用到移动文件,但是这里的文件移动指的是多文件移动到test/mov目录下
在移动文件之前,因为我没有相对应的文件,需要查看一下我们想要的文件,结果如下
[prodreamer@localhost ~]$ ls
Desktop Downloads Pictures Templates workspace
Documents Music Public Videos
这里我们创建一个test的文件夹及其子文件夹
[prodreamer@localhost ~]$ mkdir test
[prodreamer@localhost ~]$ ls
Desktop Downloads Pictures Templates Videos
Documents Music Public test workspace
[prodreamer@localhost ~]$ cd test
[prodreamer@localhost test]$ ls
mov
这里,我们创建文件夹及其子文件夹只需要在mkdir命令加个-p即可一键完成。从列表中,可以看出来,我们成功创建了一个test的文件夹及其子文件夹mov
再然后,就是创建几个用于移动的文件,可以用touch命令一次创建一个文件,也可以一次同时创建几个文件
一次创建一个文件如下
[prodreamer@localhost test]$ touch a.txt
[prodreamer@localhost test]$ ls
a.txt mov
一次创建多个文件如下
[prodreamer@localhost test]$ touch b.txt c.txt d.txt e.log
[prodreamer@localhost test]$ ls
a.txt b.txt c.txt d.txt e.log mov
通过上述两个方式,我们创建了a.txt b.txt c.txt d.txt e.log文件
准备条件搞好了,那下一步就是移动文件了,移动文件有两种方法,一种是直接列出文件名,用mv命令把文件移动到我们想要放置文件的位置,这种只能用于移动少量文件,大量文件直接移动往往会消耗太多时间,则需要用第二种方式,就是把文件打包压缩,然后把压缩文件用mv命令移动到目标位置,再解压
小部分多文件转移
方法一:
[prodreamer@localhost test]$ mv a.txt b.txt c.txt d.txt e.log -t mov
[prodreamer@localhost test]$ ls
mov
[prodreamer@localhost test]$ cd mov
[prodreamer@localhost mov]$ ls
a.txt b.txt c.txt d.txt e.log
可见,我们已经成功移动文件到mov文件夹下
我们再把文件移动到原本的目录
[prodreamer@localhost mov]$ pwd
/home/prodreamer/test/mov
[prodreamer@localhost mov]$ mv /home/prodreamer/test/mov/* -t ../
[prodreamer@localhost mov]$ cd ../
[prodreamer@localhost test]$ ls
a.txt b.txt c.txt d.txt e.log mov
上面pwd命令的作用是用来列出当前所在目录
大量文件转移
方法二:
先打包文件,这里打包我用的是tar命令
[prodreamer@localhost mov]$ tar -zcvf all.tar.gz ./*
./a.txt
./b.txt
./c.txt
./d.txt
./e.log
[prodreamer@localhost mov]$ ls
all.tar.gz a.txt b.txt c.txt d.txt e.log
从上面可指导,我们已经成功把原来mov目录下的文件压缩成一个all.tar.gz文件,那么下一步就是移动文件
[prodreamer@localhost mov]$ mv all.tar.gz -t ../
[prodreamer@localhost mov]$ ls
a.txt b.txt c.txt d.txt e.log
[prodreamer@localhost mov]$ cd ../
[prodreamer@localhost test]$ ls
all.tar.gz mov
ok,成功转移文件回来,下一步就是解压文件
[prodreamer@localhost test]$ tar -zxvf all.tar.gz
./a.txt
./b.txt
./c.txt
./d.txt
./e.log
[prodreamer@localhost test]$ ls
all.tar.gz a.txt b.txt c.txt d.txt e.log mov
解压完毕,下一步收尾,删除一下自己不想要的文件和文件夹
[prodreamer@localhost test]$ ls
all.tar.gz a.txt b.txt c.txt d.txt e.log mov
[prodreamer@localhost test]$ rm -r all.tar.gz mov
[prodreamer@localhost test]$ ls
a.txt b.txt c.txt d.txt e.log
实践完毕,不喜勿喷,若有不对或者建议的地方,欢迎指点。