Linux---文件操作命令(cp、mv、rm)

1. cp命令

cp命令可以用于复制文件\文件夹,cp命令来自英文单词:copy。

语法:cp  [选项]  参数1  参数2

参数1Linux路径,表示被复制的文件或文件夹

参数2Linux路径,表示要复制去的地方

选项包括:

 cp命令复制文件:

[root@localhost ~]# touch cangls
#建立源文件
[root@localhost ~]# cp cangls /tmp/
#把源文件不改名复制到 /tmp/ 目录下
[root@localhost ~]# cp cangls /tmp/bols
#改名复制

cp默认为cp -i 的别名,也就是说,cp命令等于cp -i :

[root@localhost ~]# cp cangls /tmp/
cp:是否覆盖"/tmp/cangls"?y
#目标位置有同名文件,所以会提示是否覆盖

 复制目录:

[root@localhost ~]# mkdir movie
#测试目录
[root@localhost ~]# cp -r /root/movie/ /tmp/

如果在复制软链接文件时不使用 "-d" 选项,则 cp 命令复制的是源文件,而不是软链接文件;只有

加入了 "-d" 选项,才会复制软链接文件:

[root@localhost ~]# cp /tmp/cangls_slink /tmp/cangls_t1
#复制软链接文件,不加"-d"选项
[root@localhost ~]# cp -d /tmp/cangls_slink /tmp/cangls_t2
#复制软链接文件,加入"-d"选项
[root@localhost ~]# ll /tmp/cangls_t1 /tmp/cangls_t2
-rw-r--r-- 1 root root 0 6月 14 05:56 /tmp/cangls_t1
lrwxrwxrwx 1 root root 12 6 月 14 05:56/tmp/ cangls_t2-> /root/cangls

当执行备份、曰志备份的时候,这些文件的时间可能是一个重要的参数,这就需执行 "-p" 选项。

这个选项会保留源文件的属性,包括所有者、所属组和时间。

使用 "-l" 选项,则目标文件会被建立为源文件的硬链接;而使用了 "-s" 选项,则目标文件会被建立

为源文件的软链接。

这两个选项和 "-d" 选项是不同的,"d" 选项要求源文件必须是软链接,目标文件才会复制为软链

接;而 "-l" 和 "-s" 选项的源文件只需是普通文件,目标文件就可以直接复制为硬链接和软链接。

2. mv命令

mv命令可以用于移动文件\文件夹,mv命令来自英文单词:move。

语法:mv  [选项]  参数1  参数2

参数1Linux路径,表示被移动的文件或文件夹

参数2Linux路径,表示要移动去的文件夹

 移动文件或目录,类似cp命令,mv命令默认执行的也是 mv -i 的别名,如果移动的目标位置已经

存在同名的文件,则同样会提示是否覆盖:

[root@localhost ~]# mv cangls /tmp
#源文件会被删除
[root@localhost ~]# mkdir movie
[root@localhost ~]# mv movie/ /tmp
#也可以移动目录。和 rm、cp 不同的是,mv 移动目录不需要加入 "-r" 选项
[root@localhost ~]# mv cangls /tmp
mv:是否覆盖"tmp/cangls"?y

目标目录下已经存在同名文件,则会提示是否覆盖,需要手工确认。这时如果移动的同名文件较

多,则需要一个一个文件进行确认,如果确认需要覆盖已经存在的同名文件,则可以使用 "-f" 选项

进行强制移动,这就不再需要用户手工确认了。

如果源文件和目标文件在同一目录中,那就是改名:

[root@localhost ~]# mv bols lmls
#把 bols 改名为 lmls

目录也可以按照同样的方法改名。

如果想要知道在移动过程中有哪些文件进行了移动,则可以使用 "-v" 选项来查看详细的移动信息:

[root@localhost ~]# touch test1.txt test2.txt test3.txt
#建立三个测试文件
[root@localhost ~]# mv -v *.txt /tmp
"test1.txt" -> "/tmp/test1.txt"
"test2.txt" -> "/tmp/test2.txt"
"test3.txt" -> "/tmp/test3.txt"

3. rm 命令

rm命令可用于删除文件、文件夹。rm命令来自英文单词:remove。

语法:rm [选项]  参数1、参数2、......、参数n

参数1、参数2......、参数N 表示要删除的文件或文件夹路径,按照空格隔开

选项包括:

rm 命令会永久性地删除文件或目录,也就是说,如果没有对文件或目录进行备份,一旦使用 rm

命令将其删除,将无法恢复。

同样的,rm 命令如果任何选项都不加,则默认执行的是"rm -i 文件名",也就是在删除一个文件之

前会先询问是否删除。

如果需要删除目录,则需要使用"-r"选项:

[root@localhost ~]# mkdir -p /test/lm/movie/jp
#递归建立测试目录
[root@localhost ~]# rm /test
rm:无法删除"/test/": 是一个目录
#如果不加"-r"选项,则会报错
[root@localhost ~]# rm -r /test
rm:是否进入目录"/test"?y
rm:是否进入目录"/test/lm/movie"?y
rm:是否删除目录"/test/lm/movie/jp"?y
rm:是否删除目录"/test/lm/movie"?y
rm:是否删除目录"/test/lm"?y
rm:是否删除目录"/test"?y
#会分别询问是否进入子目录、是否删除子目录

虽然 "-rf" 选项是用来删除目录的,但是删除文件也不会报错。所以,为了使用方便,一般不论是

删除文件还是删除目录,都会直接使用 "-rf" 选项。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三月七꧁ ꧂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值