使用 SSH 传输文件有几种常见的方法,包括使用 scp 和 rsync 命令。下面是这两种方法的基本用法:
使用 scp 命令
scp(secure copy)是基于 SSH 的文件传输工具,它可以安全地在本地计算机和远程计算机之间传输文件或目录。
1. 从本地传输文件到远程主机
- scp /path/to/local/file username@remote_host:/path/to/remote/directory/
复制代码
- /path/to/local/file:本地文件的路径
- username@remote_host:远程主机的用户名和主机名或 IP 地点
- /path/to/remote/directory/:远程主机上目的目录的路径
2. 从远程主机传输文件到本地
- scp username@remote_host:/path/to/remote/file /path/to/local/directory/
复制代码
- /path/to/remote/file:远程主机上文件的路径
- /path/to/local/directory/:本地目的目录的路径
3. 传输目录
使用 -r 选项可以递归传输目录及其内容。
- 从本地传输目录到远程主机
- scp -r /path/to/local/directory username@remote_host:/path/to/remote/directory/
复制代码 - 从远程主机传输目录到本地
- scp -r username@remote_host:/path/to/remote/directory /path/to/local/directory/
复制代码 使用 rsync 命令
rsync 是另一个基于 SSH 的文件传输工具,支持增量同步和文件的高效传输。
1. 从本地传输文件到远程主机
- rsync -avz /path/to/local/file username@remote_host:/path/to/remote/directory/
复制代码
- -a:归档模式,保留文件属性
- -v:体现详细输出
- -z:压缩文件数据以加快传输速率
2. 从远程主机传输文件到本地
- rsync -avz username@remote_host:/path/to/remote/file /path/to/local/directory/
复制代码 3. 传输目录
- 从本地传输目录到远程主机
- rsync -avz /path/to/local/directory/ username@remote_host:/path/to/remote/directory/
复制代码 - 从远程主机传输目录到本地
- rsync -avz username@remote_host:/path/to/remote/directory/ /path/to/local/directory/
复制代码 认证和设置
- SSH 密钥认证:如果你常常使用 SSH 举行连接,建议设置 SSH 密钥认证,以克制每次都输入密码。可以使用 ssh-keygen 和 ssh-copy-id 工具来设置 SSH 密钥。
- SSH 设置文件:你可以在 ~/.ssh/config 文件中设置常用的 SSH 主机和选项,以简化命令。比方:
- Host myserver
- HostName remote_host
- User username
- Port 22
复制代码 然后可以使用简化的命令:
- scp /path/to/local/file myserver:/path/to/remote/directory/
复制代码 总结
- 使用 scp 和 rsync 可以轻松地在本地和远程主机之间传输文件。
- rsync 提供了更多的选项和更高效的文件同步功能。
- 设置 SSH 密钥和 SSH 设置文件可以提高工作效率。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |