Linux rcp 命令 - 在本地与远程服务器之间复制文件和目录
• 最后修改:2025-09-09 • 阅读量:210
rcp(英文全称为:remote copy)命令是 Linux 系统和 FreeBSD 系统中用于在本地主机和远程服务器之间复制文件或目录的工具,它在传输数据时不使用加密算法加密传输的数据,因此无需输入密码。
在容易输入密码的情况下可以使用 rcp
命令传输数据,如果需要安全的传输数据,请使用 scp
命令在本地主机和远程服务器之间复制文件或目录。
本文将为你全面的介绍 rcp
命令的使用方法,使你能够简便的在本地主机和远程服务器之间复制文件或目录。
rcp 命令系统说明
rcp
命令现在在很多系统上默认是没有安装的(被 scp 命令替代),rcp 命令在各系统上对应的软件包的名称有所不同,请查看下方的安装说明。
1、在 Debian / Ubuntu 系统上安装 rsh-client 软件包来安装 rcp 命令:
# 更新软件源
sudo apt update
# 安装 rsh-client 包(含rcp)
sudo apt install rsh-client -y
2、在 RHEL / AlmaLinux / Rocky Linux 系统上安装 rsh 软件包来安装 rcp 命令:
# 安装 rsh 包
sudo dnf install rsh # RHEL 8+/AlmaLinux/Rocky
3、在 FreeBSD 系统上安装 rsh 软件包来安装 rcp 命令:
# 通过 pkg 安装
sudo pkg install rsh
rcp 命令语法
rcp 命令的基本语法结构如下所示:
rcp [选项] 源路径 目标路径
rcp 命令的语法结构非常的简单,需要理解路径信息:
- 本地路径:Linux / FreeBSD 文件系统中使用的绝对路径
- 远程路径:在文件或目录的绝对路径前添加用户和主机名信息,形式为:
用户名@主机名:/文件路径
- 主机名:可以是
IP
,也可以是域名
rcp 命令使用示例
把本地文件复制到远程
根据 rcp 命令的语法,在前面的 源路径
提供本地文件,目标路径
提供远程目录:
rcp file1.txt myuser@192.168.1.5:/home/myuser/
把远程文件复制到本地
根据 rcp 命令的语法,在前面的 源路径
提供远程文件路径,目标路径
提供本地目录:
rcp myuser@192.168.1.5:/home/myuser/file1.txt ./
递归复制目录
使用 -r
选项递归的传输目录中的所有文件及子目录:
rcp -r ~/files/ myuser@192.168.1.5:/home/myuser/files/
传输特定类型文件
rcp 命令支持通配符,可以使用通配符 *
传输特定类型的文件:
rcp *.log myuser@192.168.1.5:/home/myuser/files/log/
如上命令把所有以 .log
结尾的日志文件复制传输到远程服务器。
rcp 命令选项详解
如下给出 rcp 命令选项的详细解释说明:
选项 | 说明 |
---|---|
-p |
保留源文件的修改时间、访问模式和访问权限 |
-r |
递归复制整个目录的文件及其子目录中的文件 |
-k |
禁用 Kerberos 身份验证 |
-x |
启用 DES 加密传输内容,安全性也不是很高 |
-d |
如果目录不存在,则创建目标目录 |
-h |
复制符号链接指向的实际文件 |
-n |
当文件存在时,不覆盖已存在的文件 |
-v |
显示详细的操作过程 |
-P port |
指定远程主机的 TCP 端口(需配合 -x ) |
结语
rcp 命令能够实现在本地主机和远程服务器之间复制文件或目录。在本文中我们介绍了如何在各系统中安装 rcp 命令、其语法结构和使用示例,最后介绍了其选项。rcp 命令可在 Linux 各发行版和 FreeBSD 系统中使用。
rcp 是早期使用的在本地和远程服务器之间复制传输文件的工具,现在已经很少使用,推荐使用 scp。