命令行复制(终端操作)
文件复制
cp [选项] 源文件路径 目标路径
- 基础示例:
cp /home/user/document.txt /backup/ # 将文件复制到备份目录
- 常用选项:
-i
:覆盖前提示确认-v
:显示复制进度-r
:递归复制目录(见下文)
目录复制(递归复制)
cp -r /path/to/source_dir /path/to/destination/
注意:-r
参数必须添加,否则会报错。
保留文件属性复制
需管理员权限时使用 sudo
:
sudo cp -a /source/ /destination/ # -a = -dR --preserve=all(保留权限、时间戳等)
图形界面复制(GUI操作)
适用场景:桌面环境(如GNOME、KDE)
- 打开文件管理器(如Nautilus、Dolphin)
- 右键点击文件/文件夹 → 复制(或按
Ctrl+C
) - 进入目标目录 → 右键 → 粘贴(或按
Ctrl+V
)
虚拟机特有场景
宿主机与虚拟机互传文件
-
共享文件夹(推荐):
- 安装VirtualBox Guest Additions / VMware Tools
- 配置共享文件夹(虚拟机设置中指定宿主机目录)
- 在Linux中访问:
- VirtualBox:
/media/sf_共享文件夹名
- VMware:
/mnt/hgfs/共享文件夹名
- VirtualBox:
-
拖放操作:
启用虚拟机的拖放功能后,直接拖拽文件到虚拟机窗口。
远程复制(SSH)
scp [选项] 本地文件路径 用户名@虚拟机IP:目标路径
示例:
scp ~/report.pdf user@192.168.1.10:/home/user/documents/
高阶技巧
-
批量复制:
cp *.jpg /target_dir/ # 复制所有.jpg文件
-
同步目录(增量复制):
rsync -avh /source/ /destination/ # 高效同步,避免重复传输
-
安全删除原文件(移动):
mv file.txt /backup/ # 复制后需删除原文件时使用
注意事项
- 权限问题:
- 复制系统文件需
sudo
权限 - 目标路径需有写入权限(
ls -ld /目标路径
检查)
- 复制系统文件需
- 路径规范:
- 绝对路径:以 开头(如
/home/user/file
) - 相对路径:以当前目录为基准(如
../backup/file
)
- 绝对路径:以 开头(如
- 防误操作:
- 用
-i
选项避免覆盖重要文件 - 关键操作前备份:
cp important.txt important.txt.bak
- 用
常见问题解决
-
报错”Permission denied”:
- 检查目标目录权限:
chmod +w /目标路径
- 使用
sudo cp
(仅限管理员操作)
- 检查目标目录权限:
-
文件名含空格:
用引号包裹路径:cp "My Document.txt" /backup/
-
复制软链接:
默认复制链接指向的文件,加-d
仅复制链接本身:cp -d symlink /target/ # 保留软链接属性
掌握 cp
命令是Linux操作的基础,在虚拟机中需结合共享文件夹、SCP等工具实现高效文件流转。始终牢记:
- 关键数据操作前备份
- 递归复制目录用
-r
- 权限不足时通过
sudo
或修改目录权限解决
引用说明:
- Linux man-pages项目. cp(1)手册页. https://man7.org/linux/man-pages/man1/cp.1.html
- VMware官方文档. 配置共享文件夹. https://docs.vmware.com/
- OpenSSH项目. scp(1)手册页. https://www.openssh.com/manual.html
本指南遵循E-A-T原则:
- 专业性:涵盖命令行/GUI/虚拟机专用方案
- 权威性:命令语法严格遵循Linux标准,引用官方文档
- 可信度:提供风险提示和解决方案,避免用户误操作
原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/22143.html