1.cp命令
复制文件或目录:将需要复制的文件或目录(源)重建一份,并保存为新的文件或目录.
cp命令格式:
cp [选项]…源文件或目录…目标文件或目录
常用选项:
-f、-i、-p、-r
选项 | 说明 |
---|---|
-f | 覆盖目标同名文件或目录时不进行提醒,而直接强制复制。 |
-i | 覆盖目标同名文件或目录时提醒用户确认。 |
-p | 复制时保持源文件的权限、属主及时间标记等属性不变。 |
-r | 复制目录时必须使用此选项,表示递归复制所有文件及子目录。 |
[root@clr /opt/gzy]# ls #查看当前目录下的test1.txt
abc ky28 test1.txt
[root@clr /opt/gzy]# echo 123456 > test1.txt #将123456写到文件test1.txt中
[root@clr /opt/gzy]# cat test1.txt #查看test1.txt文件
123456
[root@clr /opt/gzy]# ll
总用量 4
drwxr-xr-x. 3 root root 51 3月 27 18:41 abc
drwxr-xr-x. 2 root root 6 3月 27 18:13 ky28
-rw-r--r--. 1 root root 7 3月 27 19:19 test1.txt
[root@clr /opt/gzy]# cp test1.txt ly.txt #复制test1.txt,并重命名为ly.txt
[root@clr /opt/gzy]# ll
总用量 8
drwxr-xr-x. 3 root root 51 3月 27 18:41 abc
drwxr-xr-x. 2 root root 6 3月 27 18:13 ky28
-rw-r--r--. 1 root root 7 3月 27 19:21 ly.txt
-rw-r--r--. 1 root root 7 3月 27 19:19 test1.txt
[root@clr /opt/gzy]# cat ly.txt #查看文件ly.txt
123456
[root@clr /opt/gzy]# rm -f test1.txt #删除源文件test1.txt
[root@clr /opt/gzy]# ll
总用量 4
drwxr-xr-x. 3 root root 51 3月 27 18:41 abc
drwxr-xr-x. 2 root root 6 3月 27 18:13 ky28
-rw-r--r--. 1 root root 7 3月 27 19:21 ly.txt
[root@clr /opt/gzy]# cat ly.txt #查看ly.txt文件
123456
[root@clr /opt/gzy]# cp ly.txt ~/lyg11.txt #将ly.txt文件复制到root用户的家目录中,并重新命名为lyg11.txt
[root@clr /opt/gzy]# cd #切换到root目录
[root@clr ~]# ll
总用量 16
-rw-------. 1 root root 1832 3月 23 00:54 anaconda-ks.cfg
drwxr-xr-x. 6 root root 4096 3月 27 16:37 gzy
-rw-r--r--. 1 root root 1880 3月 23 01:05 initial-setup-ks.cfg
-rw-r--r--. 1 root root 7 3月 27 19:23 lyg11.txt
drwxr-xr-x. 2 root root 6 3月 23 01:07 公共
drwxr-xr-x. 2 root root 6 3月 23 01:07 模板
drwxr-xr-x. 2 root root 6 3月 23 01:07 视频
drwxr-xr-x. 2 root root 6 3月 23 01:07 图片
drwxr-xr-x. 2 root root 6 3月 23 01:07 文档
drwxr-xr-x. 2 root root 6 3月 23 01:07 下载
drwxr-xr-x. 2 root root 6 3月 23 01:07 音乐
drwxr-xr-x. 2 root root 6 3月 23 01:07 桌面
[root@clr ~]# cat lyg11.txt #查看lyg11.txt文件中的内容
123456
[root@clr ~]# cd /opt/gzy/ #切换到/opt/gzy/目录
[root@clr /opt/gzy]# cp -i ly.txt ~/lyg11.txt #复制同名文件时,提醒
cp:是否覆盖"/root/lyg11.txt"? n #不覆盖
[root@clr /opt/gzy]# cat ~/lyg11.txt #用户家目录中原有lyg11.txt文件中的内容为123456
123456
[root@clr /opt/gzy]# cat ly.txt #查看ly.txt文件中内容
123456
[root@clr /opt/gzy]# vi ly.txt #修改ly.txt文件
[root@clr /opt/gzy]# cp -i ly.txt ~/lyg11.txt #将ly.txt文件复制到root用户家目录中,并重命名为lyg11.txt
cp:是否覆盖"/root/lyg11.txt"? y #同名覆盖
[root@clr /opt/gzy]# cd #切换到root用户家目录
[root@clr ~]# cat lyg11.txt #查看lyg11.txt文件内容,是ly.txt文件修改后的内容
abcghhjkkkk`123456
[root@clr ~]# cd /opt/gzy/
[root@clr /opt/gzy]# cat ly.txt #查看文件ly.txt文件中的内容
abcghhjkkkk`123456
[root@clr ~]# type cp
cp 是 `cp -i' 的别名
[root@clr ~]# cd /opt/gzy/
[root@clr /opt/gzy]# cp -f ly.txt ~/123.txt #将ly.txt复制到root用户的家目录下,并重命名为123.txt
[root@clr ~]# touch 123.txt #在root用户家目录下创建文件123.txt
[root@clr ~]# cd /opt/gzy/
[root@clr /opt/gzy]# cp -f ly.txt ~/123.txt
cp:是否覆盖"/root/123.txt/ly.txt"? ^C #cp -f的功能并未发生作用,没有同名复制提醒
[root@clr /opt/gzy]# vi ly.txt #编辑文件ly.txt
[root@clr /opt/gzy]# \cp -f ly.txt ~/123.txt #\反斜杠,起到取消cp -i的别名功能
[root@clr /opt/gzy]# /usr/bin/cp -f ly.txt ~/123.txt #使用cp这个外部命令的完整路径,进行复制,也可以取消cp -i的别名功能
注意:
cp是cp -i的别名,要想不使用cp -i的别名功能,有三种方法:取消别名(alias cp);使用cp这个外部命令的完整路径,进入/usr/bin/cp;\cp也能取消cp的别名功能;
————————————————————cp -p命令————————————————————
———————————————————cp -r命令————————————————————
[root@clr /opt]# ll #查看/opt目录
总用量 0
drwxr-xr-x. 2 root root 22 3月 27 18:14 clr
drwxr-xr-x. 2 root root 6 3月 27 09:40 file1,txt
drwxr-xr-x. 2 root root 6 3月 27 09:40 file2,txt
drwxr-xr-x. 4 root root 43 3月 27 22:43 gzy
drwxr-xr-x. 2 root root 6 10月 31 2018 rh
[root@clr /opt]# touch {1,2,3}.txt #创建1.txt和2.txt以及3.txt这三个文件
[root@clr /opt]# ll
总用量 0
-rw-r--r--. 1 root root 0 3月 27 23:09 1.txt
-rw-r--r--. 1 root root 0 3月 27 23:09 2.txt
-rw-r--r--. 1 root root 0 3月 27 23:09 3.txt
drwxr-xr-x. 2 root root 22 3月 27 18:14 clr
drwxr-xr-x. 2 root root 6 3月 27 09:40 file1,txt
drwxr-xr-x. 2 root root 6 3月 27 09:40 file2,txt
drwxr-xr-x. 4 root root 43 3月 27 22:43 gzy
drwxr-xr-x. 2 root root 6 10月 31 2018 rh
[root@clr /opt]# cp -r clr/ {1..3}.txt -r file1,txt/ gzy/ #复制目录clr、文件1.txt、2.txt和3.txt,以及目录file1,txt到/opt/gzy/目录中
cp:是否覆盖"gzy/clr/ky28.txt"? y
cp:是否覆盖"gzy/1.txt"? y
cp:是否覆盖"gzy/2.txt"? y
cp:是否覆盖"gzy/3.txt"? y
[root@clr /opt]# ll
总用量 0
-rw-r--r--. 1 root root 0 3月 27 23:09 1.txt
-rw-r--r--. 1 root root 0 3月 27 23:09 2.txt
-rw-r--r--. 1 root root 0 3月 27 23:09 3.txt
drwxr-xr-x. 2 root root 22 3月 27 18:14 clr
drwxr-xr-x. 2 root root 6 3月 27 09:40 file1,txt
drwxr-xr-x. 2 root root 6 3月 27 09:40 file2,txt
drwxr-xr-x. 6 root root 110 3月 27 23:12 gzy
drwxr-xr-x. 2 root root 6 10月 31 2018 rh
[root@clr /opt]# cd gzy #切换到目录gzy中
[root@clr /opt/gzy]# ll
总用量 4
-rw-r--r--. 1 root root 0 3月 27 23:12 1.txt
-rw-r--r--. 1 root root 0 3月 27 23:12 2.txt
-rw-r--r--. 1 root root 0 3月 27 23:12 3.txt
drwxr-xr-x. 3 root root 51 3月 27 18:41 abc
drwxr-xr-x. 2 root root 22 3月 27 23:12 clr
drwxr-xr-x. 2 root root 6 3月 27 23:12 file1,txt
drwxr-xr-x. 2 root root 6 3月 27 18:13 ky28
-rw-r--r--. 1 root root 991 3月 27 22:43 ly.txt
[root@clr /opt/gzy]# cd ../ #回到/opt/gzy/目录的上一个目录
[root@clr /opt]# ls -R gzy/ #以递归方式显示gzy目录
gzy/:
1.txt 2.txt 3.txt abc clr file1,txt ky28 ly.txt
gzy/abc:
123 h-abc.txt test1.txt
gzy/abc/123:
11
gzy/abc/123/11:
22
gzy/abc/123/11/22:
33
gzy/abc/123/11/22/33:
gzy/clr:
ky28.txt
gzy/file1,txt:
gzy/ky28:
2.rm命令
删除文件或目录
删除指定的文件或目录
rm命令格式:
rm [选项] 要删除的文件或目录
常用选项:
-f、-i、-r
选项 | 说明 |
---|---|
-f | 删除文件或目录时不进行提醒,而直接强制删除。 |
-i | 删除文件或目录时提醒用户确认。(y表示删除,n表示不删除) |
-r | 删除目录时必须使用此选项,表示递归删除整个目录树(应谨慎使用)。 |
注意:
不要直接删除系统中已有的目录或配置文件,以避免出现意外故障。
————————————————————rm -f命令——————————————————
[root@clr /opt]# rm 1.txt
rm:是否删除普通空文件 "1.txt"?^C
[root@clr /opt]# type rm
rm 是 `rm -i' 的别名
[root@clr /opt]# rm -f 1.txt #rm -f强制删除1.txt
——————————————————————rm -rf命令—————————————————
[root@clr /opt]# rm -r gzy #递归删除gzy这个目录
rm:是否进入目录"gzy"? y
rm:是否进入目录"gzy/abc"? ^C
[root@clr /opt]# rm -rf gzy #强制删除gzy这个目录
在生产环境中,删除之前需要先备份,防止造成不可挽回的损失;
[root@clr /opt]# cp clr/ clr_bak -r #复制目录clr并重命名为clr_bak
[root@clr /opt]# ll
总用量 0
-rw-r--r--. 1 root root 0 3月 27 23:09 2.txt
-rw-r--r--. 1 root root 0 3月 27 23:09 3.txt
drwxr-xr-x. 2 root root 22 3月 27 18:14 clr
drwxr-xr-x. 2 root root 22 3月 27 23:38 clr_bak
drwxr-xr-x. 2 root root 6 3月 27 09:40 file1,txt
drwxr-xr-x. 2 root root 6 3月 27 09:40 file2,txt
drwxr-xr-x. 2 root root 6 10月 31 2018 rh
[root@clr /opt]# cp 3.txt{,.bak} #复制3.txt并重命名为3.txt.bak
[root@clr /opt]# ll
总用量 0
-rw-r--r--. 1 root root 0 3月 27 23:09 2.txt
-rw-r--r--. 1 root root 0 3月 27 23:09 3.txt
-rw-r--r--. 1 root root 0 3月 27 23:39 3.txt.bak
drwxr-xr-x. 2 root root 22 3月 27 18:14 clr
drwxr-xr-x. 2 root root 22 3月 27 23:38 clr_bak
drwxr-xr-x. 2 root root 6 3月 27 09:40 file1,txt
drwxr-xr-x. 2 root root 6 3月 27 09:40 file2,txt
drwxr-xr-x. 2 root root 6 10月 31 2018 rh
3.mv命令
移动文件或目录
将指定的文件或目录转移位置。
如果目标位置与源位置相同,则相当于执行重命名操作。
mv命令格式:
mv [选项]…源文件或目录…目标文件或目录
[root@clr /opt]# mv 2.txt ~ #将2.txt文件移动到root用户的家目录
[root@clr /opt]# cd #切换到root用户的家目录
[root@clr ~]# ll
总用量 24
drwxr-xr-x. 2 root root 20 3月 27 22:41 123.txt
-rw-r--r--. 1 root root 0 3月 27 23:09 2.txt
-rw-r--r--. 1 root root 7 3月 27 22:38 abc.txt
-rw-------. 1 root root 1832 3月 23 00:54 anaconda-ks.cfg
drwxr-xr-x. 6 root root 4096 3月 27 16:37 gzy
-rw-r--r--. 1 root root 1880 3月 23 01:05 initial-setup-ks.cfg
-rw-r--r--. 1 root root 19 3月 27 19:42 lyg11.txt
-rw-r--r--. 1 root root 991 3月 27 22:43 ly.txt
drwxr-xr-x. 2 root root 6 3月 23 01:07 公共
drwxr-xr-x. 2 root root 6 3月 23 01:07 模板
drwxr-xr-x. 2 root root 6 3月 23 01:07 视频
drwxr-xr-x. 2 root root 6 3月 23 01:07 图片
drwxr-xr-x. 2 root root 6 3月 23 01:07 文档
drwxr-xr-x. 2 root root 6 3月 23 01:07 下载
drwxr-xr-x. 2 root root 6 3月 23 01:07 音乐
drwxr-xr-x. 2 root root 6 3月 23 01:07 桌面
[root@clr ~]# cd /opt/
[root@clr /opt]# ll
总用量 0
-rw-r--r--. 1 root root 0 3月 27 23:09 3.txt
-rw-r--r--. 1 root root 0 3月 27 23:39 3.txt.bak
drwxr-xr-x. 2 root root 22 3月 27 18:14 clr
drwxr-xr-x. 2 root root 22 3月 27 23:38 clr_bak
drwxr-xr-x. 2 root root 6 3月 27 09:40 file1,txt
drwxr-xr-x. 2 root root 6 3月 27 09:40 file2,txt
drwxr-xr-x. 2 root root 6 10月 31 2018 rh
[root@clr /opt]# mv rh/ clr/ #将目录rh移动到clr目录中
[root@clr /opt]# ll
总用量 0
-rw-r--r--. 1 root root 0 3月 27 23:09 3.txt
-rw-r--r--. 1 root root 0 3月 27 23:39 3.txt.bak
drwxr-xr-x. 3 root root 32 3月 27 23:48 clr
drwxr-xr-x. 2 root root 22 3月 27 23:38 clr_bak
drwxr-xr-x. 2 root root 6 3月 27 09:40 file1,txt
drwxr-xr-x. 2 root root 6 3月 27 09:40 file2,txt
[root@clr /opt]# ls clr/
ky28.txt rh
[root@clr /opt]# mv 3.txt 33.txt #将3.txt重命名为33.txt
[root@clr /opt]# ll
总用量 0
-rw-r--r--. 1 root root 0 3月 27 23:09 33.txt
-rw-r--r--. 1 root root 0 3月 27 23:39 3.txt.bak
drwxr-xr-x. 3 root root 32 3月 27 23:48 clr
drwxr-xr-x. 2 root root 22 3月 27 23:38 clr_bak
drwxr-xr-x. 2 root root 6 3月 27 09:40 file1,txt
drwxr-xr-x. 2 root root 6 3月 27 09:40 file2,txt
[root@clr /opt]# mv 33.txt /root/3344.txt #将/oopt目录下的33.txt文件移动到/root/目录下,并重命名为3344.txt
[root@clr /opt]# cd
[root@clr ~]# ll
总用量 24
drwxr-xr-x. 2 root root 20 3月 27 22:41 123.txt
-rw-r--r--. 1 root root 0 3月 27 23:09 2.txt
-rw-r--r--. 1 root root 0 3月 27 23:09 3344.txt
-rw-r--r--. 1 root root 7 3月 27 22:38 abc.txt
-rw-------. 1 root root 1832 3月 23 00:54 anaconda-ks.cfg
drwxr-xr-x. 6 root root 4096 3月 27 16:37 gzy
-rw-r--r--. 1 root root 1880 3月 23 01:05 initial-setup-ks.cfg
-rw-r--r--. 1 root root 19 3月 27 19:42 lyg11.txt
-rw-r--r--. 1 root root 991 3月 27 22:43 ly.txt
drwxr-xr-x. 2 root root 6 3月 23 01:07 公共
drwxr-xr-x. 2 root root 6 3月 23 01:07 模板
drwxr-xr-x. 2 root root 6 3月 23 01:07 视频
drwxr-xr-x. 2 root root 6 3月 23 01:07 图片
drwxr-xr-x. 2 root root 6 3月 23 01:07 文档
drwxr-xr-x. 2 root root 6 3月 23 01:07 下载
drwxr-xr-x. 2 root root 6 3月 23 01:07 音乐
drwxr-xr-x. 2 root root 6 3月 23 01:07 桌面
————————————rename命令——————————————