Skip to content

Commit 0680369

Browse files
authored
Update mv.md
1 parent 9c44979 commit 0680369

File tree

1 file changed

+116
-56
lines changed

1 file changed

+116
-56
lines changed

command/mv.md

Lines changed: 116 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,116 @@
1-
mv
2-
===
3-
4-
用来对文件或目录重新命名
5-
6-
## 补充说明
7-
8-
**mv命令** 用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。source表示源文件或目录,target表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。
9-
10-
mv命令可以用来将源文件移至一个目标文件中,或将一组文件移至一个目标目录中。源文件被移至目标文件有两种不同的结果:
11-
12-
1. 如果目标文件是到某一目录文件的路径,源文件会被移到此目录下,且文件名不变。
13-
2. 如果目标文件不是目录文件,则源文件名(只能有一个)会变为此目标文件名,并覆盖己存在的同名文件。如果源文件和目标文件在同一个目录下,mv的作用就是改文件名。当目标文件是目录文件时,源文件或目录参数可以有多个,则所有的源文件都会被移至目标文件中。所有移到该目录下的文件都将保留以前的文件名。
14-
15-
注意事项:mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加。而cp对文件进行复制,文件个数增加了。
16-
17-
### 语法
18-
19-
```
20-
mv(选项)(参数)
21-
```
22-
23-
### 选项
24-
25-
```
26-
--backup=<备份模式>:若需覆盖文件,则覆盖前先行备份;
27-
-b:当文件存在时,覆盖前,为其创建一个备份;
28-
-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;
29-
-i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。
30-
--strip-trailing-slashes:删除源文件中的斜杠“/”;
31-
-S<后缀>:为备份文件指定后缀,而不使用默认的后缀;
32-
--target-directory=<目录>:指定源文件要移动到目标目录;
33-
-u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
34-
```
35-
36-
### 参数
37-
38-
* 源文件:源文件列表。
39-
* 目标文件:如果“目标文件”是文件名则在移动文件的同时,将其改名为“目标文件”;如果“目标文件”是目录名则将源文件移动到“目标文件”下。
40-
41-
### 实例
42-
43-
将文件ex3改名为new1
44-
45-
```
46-
mv ex3 new1
47-
```
48-
49-
将目录`/usr/men`中的所有文件移到当前目录(用`.`表示)中:
50-
51-
```
52-
mv /usr/men/* .
53-
```
54-
55-
56-
<!-- Linux命令行搜索引擎:https://jaywcjlove.github.io/linux-command/ -->
1+
mv
2+
===
3+
4+
用来对文件或目录重新命名
5+
6+
## 补充说明
7+
8+
**mv命令** 用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。source表示源文件或目录,target表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。
9+
10+
mv命令可以用来将源文件移至一个目标文件中,或将一组文件移至一个目标目录中。源文件被移至目标文件有两种不同的结果:
11+
12+
1. 如果目标文件是到某一目录文件的路径,源文件会被移到此目录下,且文件名不变。
13+
2. 如果目标文件不是目录文件,则源文件名(只能有一个)会变为此目标文件名,并覆盖己存在的同名文件。如果源文件和目标文件在同一个目录下,mv的作用就是改文件名。当目标文件是目录文件时,源文件或目录参数可以有多个,则所有的源文件都会被移至目标文件中。所有移到该目录下的文件都将保留以前的文件名。
14+
15+
注意事项:mv与cp的结果不同,mv好像文件“搬家”,文件个数并未增加。而cp对文件进行复制,文件个数增加了。
16+
17+
### 语法
18+
19+
```
20+
mv(选项)(参数)
21+
```
22+
23+
### 选项
24+
25+
```
26+
--backup=<备份模式>:若需覆盖文件,则覆盖前先行备份;
27+
-b:当文件存在时,覆盖前,为其创建一个备份;
28+
-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;
29+
-i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。
30+
--strip-trailing-slashes:删除源文件中的斜杠“/”;
31+
-S<后缀>:为备份文件指定后缀,而不使用默认的后缀;
32+
--target-directory=<目录>:指定源文件要移动到目标目录;
33+
-u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
34+
```
35+
36+
### 参数
37+
38+
* 源文件:源文件列表。
39+
* 目标文件:如果“目标文件”是文件名则在移动文件的同时,将其改名为“目标文件”;如果“目标文件”是目录名则将源文件移动到“目标文件”下。
40+
41+
### 实例
42+
43+
将目录`/usr/men`中的所有文件移到当前目录(用`.`表示)中:
44+
45+
```
46+
mv /usr/men/* .
47+
```
48+
49+
移动文件
50+
51+
```
52+
mv file_1.txt /home/office/
53+
```
54+
55+
移动多个文件
56+
57+
```
58+
mv file_2.txt file_3.txt file_4.txt /home/office/
59+
mv *.txt /home/office/
60+
```
61+
62+
移动目录
63+
64+
```
65+
mv directory_1/ /home/office/
66+
```
67+
68+
重命名文件或目录
69+
70+
```bash
71+
mv file_1.txt file_2.txt # 将文件file_1.txt改名为file_2.txt
72+
```
73+
74+
重命名目录
75+
76+
```
77+
mv directory_1/ directory_2/
78+
```
79+
80+
打印移动信息
81+
82+
```bash
83+
mv -v *.txt /home/office
84+
```
85+
86+
提示是否覆盖文件
87+
88+
```
89+
mv -i file_1.txt /home/office
90+
```
91+
92+
源文件比目标文件新时才执行更新
93+
94+
```
95+
mv -uv *.txt /home/office
96+
```
97+
98+
不要覆盖任何已存在的文件
99+
100+
```
101+
mv -vn *.txt /home/office
102+
```
103+
104+
复制时创建备份
105+
106+
```
107+
mv -bv *.txt /home/office
108+
```
109+
110+
无条件覆盖已经存在的文件
111+
112+
```
113+
mv -f *.txt /home/office
114+
```
115+
116+
<!-- Linux命令行搜索引擎:https://jaywcjlove.github.io/linux-command/ -->

0 commit comments

Comments
 (0)