如何在Linux下移动?

发布者:上海IT外包来源:http://www.lanmon.net点击数:901

Mv也是一个非常常用的Linux命令,但除了一些基本用途之外,你知道哪些高级用途?


基本用途
移动一个或多个文件;
移动一个或多个目录;
重命名文件/目录。
这些是非常基本的用途,不需要描述。这些是一些最先进的用途。
2.打印操作信息
如果我们只移动一个或两个文件或目录,我们可以转到目标位置以查看文件是否已正确移动。但是如果有成千上万的文件,我们怎么能知道我们的操作是否成功而没有查看目的地位置?我们可以添加-v选项。
[alvin @ VM_0_16_centos mv_test] $ mv -v * .txt/home/alvin/test/mv_test/des /
'file1.txt' - >
'/Home/alvin/test/mv_test/des/file1.txt'
'file2.txt' - >
'/Home/alvin/test/mv_test/des/file2.txt'
'file3.txt' - >
'/Home/alvin/test/mv_test/des/file3.txt'
'file4.txt' - >
'/Home/alvin/test/mv_test/des/file4.txt'
'File5.txt' - >
'/Home/alvin/test/mv_test/des/file5.txt'
当然,这种方法同样适用于移动目录。
3.使用交互模式
默认情况下,我们在移动文件/目录时没有任何建议。如果我们在目标位置具有相同名称的文件/目录,则mv命令不会直接请求或替换原始文件。这种行动有时会产生灾难性的后果。
在这种情况下,我们可以添加-i选项,该选项将在目标位置具有相同名称的文件时显示。如果您确定要覆盖目标文件,请键入y。
[alvin @ VM_0_16_centos mv_test] $ mv -i file1.txt/home/alvin/test/mv_test/des /Mv:覆盖'/home/alvin/test/mv_test/des/file1.txt'?和
4.不要覆盖具有相同名称的文件
如果目标位置具有相同名称的文件,我们不希望它被覆盖,您可以添加-n选项。
[alvin @ VM_0_16_centos mv_test]来自/*的$ ll * .txt。 TXT
-rw-rw-r-- 1 alvin alvin 0 February 8 17: 26 file2.txt
-rw-rw-r-- 1 alvin alvin 0 February 8 17: 35 file3.txt
-rw-rw-r-- 1 alvin alvin 0 Feb 8 17: 26 des/file1.txt
-rw-rw-r-- 1 alvin alvin 0 feb 8 17: 27 des/file2.txt
[alvin @ VM_0_16_centos mv_test] $ mv -nv * .txt/home/alvin/test/mv_test/des /
'file3.txt' - >
'/Home/alvin/test/mv_test/des/file3.txt'#目的地位置没有file3.txt文件,因此移动成功。
[alvin @ VM_0_16_centos mv_test] $ ls
Des file2.txt
5.使用更新选项。
当目标位置具有相同名称的文件/目录时,我们只想在更新源文件时覆盖目标文件的时间戳,否则将不会执行。在这种情况下,我们可以使用-u选项。
[alvin @ VM_0_16_centos mv_test]来自/*的$ ll * .txt。 TXT
RW-RW-R-- 1 0阿尔文阿尔文: 17年2月8日26 FILE1.TXT#源文件比所述目的地文件的时间戳更近
RW-RW-R-- 1个阿尔文阿尔文0 17年2月8日: 26 FILE2.TXT#源文件比所述目标文件的时间戳更旧
RW-RW-R-- 1个阿尔文阿尔文0 53 16年2月8日: DES/FILE1.TXT
-rw-rw-r-- 1 alvin alvin 0 feb 8 17: 27 des/file2.txt[alvin @ VM_0_16_centos mv_test] $ mv -uv * .txt/home/alvin/test/mv_test/des /
'file1.txt' - >
'/Home/alvin/test/mv_test/des/file1.txt'#solo更新文件已更新
[alvin @ VM_0_16_centos mv_test] $ ls
Des file2.txt
6.在覆盖之前创建备份
目标位置已具有相同的名称文件。如果直接覆盖总是感觉有点不可靠,如果当前的决定不正确会发生什么?是否可以在覆盖之前备份目标文件?答案是肯定的,添加到-b选项很好。
[alvin @ VM_0_16_centos mv_test] $ mv -bv * .txt/home/alvin/test/mv_test/des /
'file1.txt' - >
'/Home/alvin/test/mv_test/des/file1.txt'(备份: '/home/alvin/test/mv_test/des/file1.txt~')
'file2.txt' - >
'/Home/alvin/test/mv_test/des/file2.txt'(备份: '/home/alvin/test/mv_test/des/file2.txt~')
[alvin @ VM_0_16_centos mv_test] $ ll des /
总计0
-rw-rw-r-- 1 alvin alvin 0 February 8 17: 41 file1.txt
-rw-rw-r-- 1 alvin alvin 0 February 8 17: 26 file1.txt~
-rw-rw-r-- 1 alvin alvin 0 February 8 17: 26 file2.txt
-rw-rw-r-- 1 alvin alvin 0 Feb 8 17: 27 file2.txt~
-rw-rw-r-- 1 alvin alvin 0 February 8 17: 35 file3.txt
正如您所看到的,在覆盖之前,目标文件将作为具有波浪号〜的文件备份,并且仔细的读者会注意到覆盖的文件与备份文件的时间戳不同。以上是mv命令最先进用法的一部分。如果您灵活使用它,您将提高工作效率和工作效率。
IT外包
>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部