【Linux学习】Linux必备命令(一)--之mv命令详解

【Linux学习】Linux必备命令(一)–之mv命令详解

1.命令详解

mv 命令主要用于重命名或者移动文件或者目录,用法, mv old.txt new.txt,常用
参数详解如下:

用法:	mv [选项] [-T] 源文件 目标文件;
	或:mv [选项] 源文件... 目录;
	或:mv [选项] -t 目录 源文件;
将源文件重命名为目标文件,或将源文件移动至指定目录。长选项必须使用的参数对于短选项时也是必需使用的。
	--backup				为每个已存在的目标文件创建备份;
-b 							类似--backup 但不接受参数;
-f, --force 				覆盖前不询问;
-i, --interactive 			覆盖前询问;
-n, --no-clobber 			不覆盖已存在文件,如果您指定了-i、-f、-n 中的多个,仅最后一个生效;
	--strip-trailing-slashes 去掉每个源文件参数尾部的斜线;
-S, --suffix=SUFFIX 		替换常用的备份文件后缀;
-t, --target-directory=DIRECTORY 将所有参数指定的源文件或目录移动至指定目录;
-T, --no-target-directory 	将目标文件视作普通文件处理;
-u, --update 				只在源文件文件比目标文件新或目标文件不存在时才进行移动;
-v, --verbose 				详细显示进行的步骤;
	--help 					显示此帮助信息并退出;
	--version				显示版本信息并退出

2.命令示例

移动文件

移动文件到目录或重命名

[root@nie linux]# ls
1.txt  2.txt  a  linux.txt  word
[root@nie linux]# ls a/
[root@nie linux]# mv 1.txt a
[root@nie linux]# ls a/
1.txt
[root@nie linux]# ls
2.txt  a  linux.txt  word
或
[root@nie linux]# ls
a  linux.txt  word
[root@nie linux]# mv linux.txt linux1.txt 
[root@nie linux]# ls
a  linux1.txt  word

同名文件确认后覆盖

[root@nie linux]# ls
2.txt  a  linux.txt  word
[root@nie linux]# ls word/
1.txt  2.txt  linux.txt
[root@nie linux]# mv -i 2.txt word/
mv:是否覆盖'word/2.txt'? y
[root@nie linux]# ls
a  linux.txt  word
[root@nie linux]# ls word/
1.txt  2.txt  linux.txt

同名目录无需确认直接覆盖

[root@nie linux]# ls word/
1.txt  2.txt  linux.txt
[root@nie linux]# ls 
a  linux.txt  word
[root@nie linux]# ls a/
1.txt
[root@nie linux]# mv -f a/1.txt word/
[root@nie linux]# ls a/
[root@nie linux]# ls word/
1.txt  2.txt  linux.txt

同名文件覆盖前备份

[root@nie linux]# ll
总用量 4
drwxr-xr-x. 2 root root  6 6月   1 12:23 a
-rw-r--r--. 1 root root 18 5月  31 19:57 linux.txt
drwxr-xr-x. 2 root root 49 6月   1 12:23 word
[root@nie linux]# ll word/
总用量 8
-rw-r--r--. 1 root root 4 5月  31 19:56 1.txt
-rw-r--r--. 1 root root 6 5月  31 19:56 2.txt
-rw-r--r--. 1 root root 0 5月  31 19:40 linux.txt
[root@nie linux]# mv -b linux.txt word/
mv:是否覆盖'word/linux.txt'? y
[root@nie linux]# ll
总用量 0
drwxr-xr-x. 2 root root  6 6月   1 12:23 a
drwxr-xr-x. 2 root root 67 6月   1 12:27 word
[root@nie linux]# ll word/
总用量 12
-rw-r--r--. 1 root root  4 5月  31 19:56 1.txt
-rw-r--r--. 1 root root  6 5月  31 19:56 2.txt
-rw-r--r--. 1 root root 18 5月  31 19:57 linux.txt
-rw-r--r--. 1 root root  0 5月  31 19:40 linux.txt~

当源文件比目标文件新,或者目标文件不存在时,才移动

[root@nie linux]# ll
总用量 4
drwxr-xr-x. 2 root root 23 6月   1 12:58 a
-rw-r--r--. 1  777 root 22 6月   1 13:00 linux.txt
drwxr-xr-x. 2 root root 49 6月   1 12:55 word
[root@nie linux]# ll a/
总用量 0
-rw-r--r--. 1 root root 0 6月   1 12:58 linux.txt
[root@nie linux]# ll word/
总用量 12
-rw-r--r--. 1 root root  4 5月  31 19:56 1.txt
-rw-r--r--. 1 root root  6 5月  31 19:56 2.txt
-rw-r--r--. 1 root root 18 5月  31 19:57 linux.txt
[root@nie linux]# mv -u linux.txt a/
mv:是否覆盖'a/linux.txt'? y
[root@nie linux]# ll
总用量 0
drwxr-xr-x. 2 root root 23 6月   1 13:03 a
drwxr-xr-x. 2 root root 49 6月   1 12:55 word
[root@nie linux]# ll a/
总用量 4
-rw-r--r--. 1 777 root 22 6月   1 13:00 linux.txt
或
[root@nie linux]# mv -u word/linux.txt ./
[root@nie linux]# ll
总用量 4
drwxr-xr-x. 2 root root 23 6月   1 13:03 a
-rw-r--r--. 1 root root 18 5月  31 19:57 linux.txt
drwxr-xr-x. 2 root root 32 6月   1 13:04 word
[root@nie linux]# ll word/
总用量 8
-rw-r--r--. 1 root root 4 5月  31 19:56 1.txt
-rw-r--r--. 1 root root 6 5月  31 19:56 2.txt

移动目录

移动目录,若目标目录不存在则改名

[root@nie linux]# ls
a  linux1.txt  word
[root@nie linux]# mv a word1/
[root@nie linux]# ls
linux1.txt  word  word1

[root@nie linux]# mv word1/ word/
[root@nie linux]# ls
linux1.txt  word
[root@nie linux]# ls word/
1.txt  2.txt  word1

目录下的文件移动到当前目录下

[root@nie linux]# ls 
linux1.txt  word
[root@nie linux]# ls word/
1.txt  2.txt  word1
[root@nie linux]# ls word/word1/
linux.txt
[root@nie linux]# mv word/* ./
[root@nie linux]# ls
1.txt  2.txt  linux1.txt  word  word1
[root@nie linux]# ls word/
[root@nie linux]# ls word1/
linux.txt

你可能感兴趣的:(Linux学习,linux,学习)