Linux 的 cp 命令

Linux 的 cp 命令详解

命令概述

cp 是 Linux 系统中用于复制文件和目录的基本命令,全称为 "copy"。它是日常文件管理中最常用的命令之一。

基本语法

复制代码
cp [选项] 源文件 目标文件
cp [选项] 源文件... 目标目录

常用选项

  • -i:交互模式,覆盖前提示确认
  • -r-R:递归复制目录及其内容
  • -v:显示详细操作信息
  • -p:保留文件属性(权限、时间戳等)
  • -f:强制覆盖已存在文件
  • -u:仅复制源文件比目标文件新或不存在的文件

使用示例

1. 基本文件复制

bash 复制代码
cp file1.txt file2.txt  # 复制file1.txt为file2.txt

2. 复制到目录

bash 复制代码
cp file1.txt /path/to/directory/  # 复制file1.txt到指定目录

3. 递归复制目录

bash 复制代码
cp -r dir1/ dir2/  # 复制dir1目录及其内容到dir2

4. 保留文件属性

bash 复制代码
cp -p file1.txt file2.txt  # 复制并保留权限和时间戳

5. 交互式复制

bash 复制代码
cp -i file1.txt file2.txt  # 覆盖前会询问确认

高级用法

1. 通配符复制

bash 复制代码
cp *.txt /backup/  # 复制所有.txt文件到备份目录

2. 创建硬链接

bash 复制代码
cp -l file1.txt file2.txt  # 创建硬链接而非复制内容

3. 创建符号链接

bash 复制代码
cp -s file1.txt file2.txt  # 创建符号链接

4. 仅更新较新文件

bash 复制代码
cp -u *.html /var/www/  # 仅复制比目标目录中更新的HTML文件

注意事项

  1. 默认情况下,cp 命令会覆盖目标文件而不提示
  2. 复制目录时必须使用 -r 选项
  3. 跨文件系统复制时,某些属性可能无法保留
  4. 对于大文件,可以考虑使用 rsync 命令以获得更好的性能

相关命令

  • mv:移动/重命名文件
  • rm:删除文件
  • rsync:高级文件复制和同步工具
  • scp:通过网络安全复制文件
相关推荐
orion5721 小时前
Missing Semester Class1:course overview and introduction of shell
linux
SkyWalking中文站1 天前
认识 Horizon UI · 6/17:Trace 探索器
运维·监控·自动化运维
用户120487221611 天前
Linux驱动编译与加载
linux·嵌入式
程序员老赵1 天前
服务器文件不想 SFTP 上传?Docker 跑个 File Browser,浏览器就能管理
服务器·docker·开源
火车叼位1 天前
写给初级开发者:SSL、SSH、HTTPS 与证书体系全解析
运维
vivo互联网技术1 天前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
用户805533698031 天前
Input 子系统架构:Core、Handler、Driver 三层是怎么协作的
linux·嵌入式
用户805533698031 天前
RK-Forge外设系列开篇 - 把板子从「能启动」变成「能用」:Ethernet/SPI/MMC 三个纯接线外设
linux·github·嵌入式
小猿姐2 天前
唯品会大规模数据库云原生实践:基于 KubeBlocks 管理数千实例的统一运维之路
运维·elasticsearch·云原生