Linux cp 命令,复制文件或目录

cp 命令用于复制文件或目录。它可以在同一个文件系统中移动文件,也可以跨文件系统进行复制。使用 cp 命令可以非常方便地创建文件的副本。

常见选项

  • -i--interactive:在覆盖目标文件之前提示确认。
  • -v--verbose:显示详细的处理过程。
  • -p--preserve:保留原始文件的属性,如修改时间、权限等。
  • -r--recursive:递归复制目录及其子目录中的所有内容。
  • -f--force:如果目标文件已存在,则强制覆盖。
  • -u--update:仅当源文件比目标文件新时才复制。
  • -n--no-clobber:不覆盖现有的文件。

基本用法

复制单个文件

例如,将文件 example.txt 复制到当前目录下并命名为 backup.txt

复制多个文件

例如,将 file1.txtfile2.txt 复制到 /home/user/docs/ 目录:

复制目录

为了复制目录,需要使用 -r 选项:

例如,将目录 project 及其内容复制到 /home/user/backup/project

高级用法

使用通配符复制文件

可以使用通配符来指定一组文件进行复制:

例如,将所有以 log 开头的文件复制到 /var/log/backup/

交互式复制

为了避免意外覆盖文件,可以使用 -i 选项:

例如,在复制 data.txtnew_data.txt 时,如果 new_data.txt 已经存在,系统会提示是否覆盖:

保留文件属性

使用 -p 选项可以保留文件的修改时间、访问时间以及权限信息:

例如,将 script.sh 文件复制为 backup_script.sh 并保留其属性:

更新文件

使用 -u 选项可以确保只有当源文件比目标文件更新时才会复制:

例如,将 config.conf 文件复制到 /etc/ 目录下,但只有当 /etc/config.conf 已经存在且比 config.conf 更旧时才会更新:

注意事项

  • 在复制大量文件时,最好使用 -v 选项查看详细输出。
  • 如果目标文件已经存在且不想被覆盖,可以使用 -n 选项。
  • 当复制大文件或大量文件时,可能需要较长时间,请耐心等待。

通过上述介绍,您可以掌握 cp 命令的基本用法和一些高级功能。希望这些示例能帮助您更高效地管理文件和目录。

上一篇: ls 命令
下一篇: mkdir 命令
纠错
反馈