跳转到主要内容
模块 2 · 第 2 课(共 3)课程中的4/11~12 min
模块课程(2/3)

移动和复制(mv 和 cp)

要在终端中重新组织和复制文件,请使用 cp (复制)和 mv (移动或重命名)命令。


复制文件和文件夹:cp

复制文件的基本语法是:

Bash
cp [source] [destination]

它代表复制。例如,要将名为 photo.png 的文件复制到名为 images 的文件夹中,您可以键入:

Bash
cp photo.png images/

使用 -r 递归复制文件夹

如果您尝试使用标准 cp 命令复制目录,您将收到错误。要递归复制文件夹及其所有内容,必须使用 -r (或 -R,递归)选项:

Bash
cp -r project_folder project_backup

移动或重命名文件和文件夹:mv

mv 命令代表 移动。它用于将文件和文件夹移动到不同的目录中,并重命名它们:

Bash
mv [source] [destination]

移动资源

要将名为 document.pdf 的文件移动到名为 archive 的文件夹中:

Bash
mv document.pdf archive/

重命名资源

要更改文件名而不将其移动到另一个目录,请将新文件名指定为目标:

Bash
mv old_name.txt new_name.txt

同时移动和重命名

您只需一步即可移动和重命名文件:

Bash
mv report.txt archive/monthly_report.txt

使用示例和常见错误

如果尝试复制目录而不指定递归 -r 选项,则 cp 命令将失败并出现错误:

Bash
cp backup backup_copy
# Output:
# cp: -r not specified; omitting directory 'backup'

如果您尝试移动或复制不存在的源文件,您将收到一条错误消息:

Bash
mv nonexistent_file.txt backup/
# Output:
# mv: cannot stat 'nonexistent_file.txt': No such file or directory

自己尝试一下

练习 1:复制报告

锻炼#linux.m2.l2.e1
尝试:0加载中...

将文件“report.txt”复制到“backup”文件夹中,同时保留原始文件。

正在加载编辑器...
显示提示

使用 cp,将“report.txt”作为源,将“backup”作为目标。

3 次尝试后可用的解决方案

练习 2:移动和重命名

锻炼#linux.m2.l2.e2
尝试:0加载中...

将文件“old_notes.txt”移动到“archive”文件夹中,同时将其重命名为“notes_old.txt”。

正在加载编辑器...
显示提示

使用 mv,指定源文件和目标路径(包括新文件名)。

3 次尝试后可用的解决方案

练习 3:复制目录

锻炼#linux.m2.l2.e3
尝试:0加载中...

创建整个“backup”文件夹的备份副本并将其命名为“backup_dir”(请记住使用递归选项)。

正在加载编辑器...
显示提示

使用带有 -r 标志的 cp 命令将备份文件夹复制到 backup_dir。

3 次尝试后可用的解决方案