
Linux 中的 cp 命令代表 “复制”。它是一种命令行工具,用于将文件和目录从文件系统中的一个位置复制到另一个位置。通过使用 cp 命令,用户可以创建文件或目录的副本,同时保留原始内容。
cp 命令中的 “source“是指要复制的文件或目录,”destination“是指要放置副本的位置。可以添加各种选项来修改复制行为,如保留文件属性或提供详细输出。在 Linux 中,它是管理文件和目录的基本命令,使用广泛。
在本篇文章中,我们将介绍在 Linux 中使用 cp 命令复制文件和文件夹的一些常用方法。
语法:
cp [options] source destination
1. 复制文件
cp foo.txt bar.txt
该命令将把 foo.txt 文件的内容复制到名为 bar.txt 的文件中。
示例:
假设您有一个名为 foo.txt 的文件,内容如下:
Hello, World!
如果运行 cp foo.txt bar.txt 命令,就会创建一个名为 bar.txt 的新文件,其内容与 foo.txt 完全相同:
Hello, World!
如果 bar.txt 已经存在,其内容将被 foo.txt 的内容覆盖。如果 bar.txt 不存在,则会被创建。
2. 复制目录(及其内容)
cp -R foo-folder bar-folder
-R 选项代表 “递归”,用于复制目录及其内容,包括子目录。
下面是 cp -R foo-folder bar-folder 命令的作用:
cp: 调用复制命令。-R: 告诉命令进行递归操作,复制所有目录和子目录。foo-folder: 要复制的源目录。bar-folder: 要复制源目录的目标目录。
示例
假设有一个名为 foo-folder 的目录,其结构如下:
foo-folder/ ├── file1.txt └── subfolder └── file2.txt
然后,你要将整个目录复制到另一个名为 bar-folder 的目录中。
你可以运行命令:
cp -R foo-folder bar-folder
运行此命令后, bar-folder 目录的结构将与 foo-folder 相同:
bar-folder/ └── foo-folder ├── file1.txt └── subfolder └── file2.txt
如果 bar-folder 不存在,则将创建它。如果存在,foo-folder 将被复制到其中,并保留 foo-folder 的结构。
注:如果要将 foo-folder 的内容直接复制到 bar-folder 中,而不在 bar-folder 中创建 foo-folder,则需要确保 bar-folder 存在,然后运行:
| 1 | cp -R foo-folder/* bar-folder/ |
3. 显示复制进度
cp -v foo.txt bar.txt
-v 选项代表 “verbose”(详细说明),与 cp 命令一起使用时,可提供有关正在执行的操作的详细信息。
示例:
假设当前目录下有一个名为 foo.txt 的文件,你想在同一目录下创建一个名为 bar.txt 的文件副本。您可以使用以下命令:
cp -v foo.txt bar.txt
如果操作成功,命令将输出如下信息:
'foo.txt' -> 'bar.txt'
该信息确认文件 foo.txt 已复制到 bar.txt。
4. 确认覆盖文件
cp -i foo.txt bar.txt
-i 代表 “interactive(交互式)”。使用该选项时,系统会在覆盖任何文件前提示你。如果你想避免意外覆盖现有文件,这个选项非常有用。
示例:
假设当前目录下有一个名为 foo.txt 的文件,你想在同一目录下创建一个名为 bar.txt 的副本。但是你不确定名为 bar.txt 的文件是否已经存在,而且你不想在没有警告的情况下覆盖它。
您可以使用命令:
cp -i foo.txt bar.txt
如果已存在 bar.txt,系统将提示您类似的信息:
cp: overwrite 'bar.txt'?
然后,你可以输入 y (是)选择覆盖,或输入 n (否)避免覆盖。
如果 bar.txt 不存在,命令将直接创建一个名为 bar.txt 的 foo.txt 副本,而不会有任何提示。
5. 将多个文件复制到一个目录
cp foo.txt bar.txt baz
该命令将在 baz 目录中复制 foo.txt 和 bar.txt。baz 目录必须存在,命令才会生效。
更多 Linux 命令
下面罗列了最常见的一些 Linux 命令,您可以根据自己的需要查阅对应命令的详细解析:
| 目录操作 | rmdir · cd · pwd · exa · ls |
| 文件操作 | cat · cp · dd · less · touch · ln · rename · more · head |
| 文件系统操作 | chown · mkfs · locate |
| 网络 | ping · curl · wget · iptables · mtr |
| 搜索和文本处理 | find · grep · sed · whatis · ripgrep · fd · tldr |
| 系统信息和管理 | env · history · top · who · htop · glances · lsof |
| 用户和会话管理 | screen · su · sudo · open |
此外,我们还整理 Linux 命令行大全,以帮助大家全面深入地学习 Linux。
免责声明
- 本站文章均为原创,除非另有说明,否则本站内容依据 CC BY-NC-SA 4.0 许可证进行授权,转载请附上出处链接及本声明,谢谢。
- 本站提供的资源(插件或主题)均为网上搜集,如有涉及或侵害到您的版权,请立即通过邮箱 admin@wpwpp.com 通知我们。
- 本站所有下载文件,仅用作学习研究使用,下载后请在 24小时内 删除。请支持正版,切勿用作商业用途。
- 因代码可变性,本站不保证兼容所有浏览器、不保证兼容所有版本的 WordPress,不保证兼容您安装的其他插件。
- 本站保证所提供资源(插件或主题)的完整性,但不含授权许可、帮助文档、XML文件、PSD、后续升级等。
- 使用该资源(插件或主题)需要用户有一定代码基础知识!本站只提供汉化及安装教程,仅供参考。由本站提供的资源对您的网站或计算机造成严重后果的,本站概不负责。
- 有时可能会遇到部分字段无法汉化,同时请保留作者汉化宣传信息,谢谢!
- 本站资源售价只是赞助和汉化辛苦费,收取费用仅维持本站的日常运营所需。
- 如果您喜欢本站资源,开通会员享受更多优惠折扣,谢谢支持!
- 如果网盘地址失效,请在相应资源页面下留言,我们会尽快修复下载地址。
- 本站网址:wpwpp.com,联系邮箱:admin@wpwpp.com。















暂无评论内容