linux常用命令(3):cp命令(文件复制)

本文详细介绍了Linuxcp命令的用途、基本语法、常见参数如-a,-r等,以及几个实际操作的示例,包括复制单个文件、目录及使用find命令配合复制特定文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、命令简介

cp(copy)复制文件和目录。

cp 命令主要用于复制文件或目录,可以将一个或多个源文件或者目录复制到指定目的文件或目录。当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

二、语法

cp [options] source dest
或
cp [options] source... directory

常见参数

参数说明:

-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。

三、示例

(1)复制文件 a、b、c、d 到 dir2。

注意,目录 dir2 需要事先存在,否则报错。

cp a b c d dir2

(2)使用指令"cp"将当前目录"test/"下的所有文件复制到新目录"newtest"下,输入如下命令:

 cp –r test/ newtest

(3)复制目录 dir1 到 dir2。

如果 dir2 不存在,相当于将 dir1 拷贝一份并命名为 dir2。

如果 dir2 事先存在,相当于将 dir1 拷贝一份放到 dir2 目录下。

cp -r dir1 dir2

(4)交互式地将目录/home/test 中的以 a打头的所有 .txt文件复制到目录 /home中。

cp -i /home/test  a*.txt  /home

我们在 Linux 下使用 cp 命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按 Y 来确定执行覆盖。

(5)扩展:cp与其他命令组合使用,复制符合条件的文件到另一目录

// 查找/oldboy目录下的文件名以.sh结尾的文件,并复制到/tmp目录下
cp $(find /oldboy/ -type f -name "*.sh")  /tmp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

五月天的尾巴

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

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

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

打赏作者

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

抵扣说明:

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

余额充值