Linux文件目录 --- 复制命令CP、递归复制目录、软连接、硬链接

一、复制cp

该命令用于复制文件或目录,下面是命令使用格式和常用的参数

cp [参数] 源文件或目录 目标文件或目录 #中间各有一个空格隔开

参数 作用
-f 覆盖同名文件或目录时不进行提醒
-i 覆盖同名文件或目录时进行提醒
-p 保留源文件的属性(权限、时间等)
-r 递归复制目录
-s 创建软链接
-l 创建硬链接

1.复制文件到目标目录

这个是使用频率最高的命令,把文件或目录复制到目标目录下。如下所示,复制到文件夹下。如果目标文件已经存在或目标文件夹中含有同名文件,则复制之后会进行询问是否覆盖存储。

[root@fnd_LN ~]# cp test01 ./abc #复制test01文件到当前目录的abc目录中

[root@fnd_LN ~]# ll abc #查看目标目录

总用量 0

-rw-r--r--. 1 root root 0 12月 22 15:10 test01

[root@fnd_LN ~]# cp test01 abc #再复制一个同名文件过去

cp:是否覆盖"abc/test01"? #询问是否覆盖(输入Y/N)

2.复制多个文件

反复执行多条cp命令会很麻烦,cp命令可以通过空格隔开,一次性复制多个文件。

[root@fnd_LN ~]# cp test02 test03 abc #同时复制多个文件到一个目录中

[root@fnd_LN ~]# ll abc #查看目标目录

总用量 0

-rw-r--r--. 1 root root 0 12月 22 15:10 test01

-rw-r--r--. 1 root root 0 12月 22 15:17 test02

-rw-r--r--. 1 root root 0 12月 22 15:17 test03

3.复制目录

复制目录时一定要记住复制文件夹一定要加"-r"参数,否则会发生错误,cp命令会忽略此目录!

[root@fnd_LN ~]# cp abc qwe

cp: 略过目录"abc"
[root@fnd_LN ~]# cp -r abc qwe #复制abc目录到qwe目录中

[root@fnd_LN ~]# ll qwe/abc #查看在qwe目录中的abc目录

总用量 0

-rw-r--r--. 1 root root 0 12月 22 15:19 test01

-rw-r--r--. 1 root root 0 12月 22 15:19 test02

-rw-r--r--. 1 root

4.创建软链接

用ln命令实现同样的功能,当文件访问起来十分不方便时,可以选择创建这个文件的软链接。这就像是window系统中的快捷方式一样,可以让我们快速进行访问,

[root@fnd_LN ~]# cp -s qwe/a/b/c/123 ./ #"./"为当前目录

[root@fnd_LN ~]# ll

lrwxrwxrwx. 1 root root 13 12月 22 15:49 123 -> qwe/a/b/c/123

[root@fnd_LN ~]# echo 1234567890 > 123

[root@fnd_LN ~]# cat 123

1234567890

5.创建硬链接

当需要创建一个硬链接时可以使用"cp -l"命令,ln命令也可以实现同样的功能。

[root@fnd_LN ~]# cp -l qwe/a/b/c/123 ./

[root@fnd_LN ~]# ll

-rw-r--r--. 2 root root 11 12月 22 15:51 123

相关推荐
不想起昵称92913 分钟前
Linux SHELL脚本中的变量与运算
linux
loong_XL20 分钟前
服务器ip:port服务用nginx 域名代理
服务器·tcp/ip·nginx
夕泠爱吃糖26 分钟前
C++中如何实现序列化和反序列化?
服务器·数据库·c++
the丶only42 分钟前
单点登录平台Casdoor搭建与使用,集成gitlab同步创建删除账号
linux·运维·服务器·docker·gitlab
书生-w44 分钟前
Docker部署GitLab服务器
服务器·docker·gitlab
Ling_suu1 小时前
SpringBoot3——Web开发
java·服务器·前端
alden_ygq1 小时前
etcd网关
服务器·数据库·etcd
ccubee1 小时前
docker 安装 ftp
运维·docker·容器
枫叶红花2 小时前
【Linux系统编程】:信号(2)——信号的产生
linux·运维·服务器