在Ubuntu系统中,使用SSH进行远程文件传输通常有两种方法:使用scp命令和使用sftp命令。以下是这两种方法的详细说明和示例:
scp 命令scp(Secure Copy Protocol)是一个基于SSH的文件传输工具,可以在本地主机和远程主机之间安全地复制文件和目录。
scp [选项] [源路径] [目标路径]
从本地复制到远程
scp /path/to/local/file username@remote_host:/path/to/remote/directory
例如:
scp /home/user/documents/report.txt user@192.168.1.100:/home/user/reports/
从远程复制到本地
scp username@remote_host:/path/to/remote/file /path/to/local/directory
例如:
scp user@192.168.1.100:/home/user/reports/report.txt /home/user/documents/
复制整个目录
scp -r /path/to/local/directory username@remote_host:/path/to/remote/directory
例如:
scp -r /home/user/documents user@192.168.1.100:/home/user/reports/
sftp 命令sftp(SSH File Transfer Protocol)是一个基于SSH的文件传输工具,提供了一个交互式的文件传输界面。
sftp username@remote_host
连接到远程主机
sftp user@192.168.1.100
连接成功后,你会看到一个提示符,类似于:
sftp>
上传文件
put /path/to/local/file /path/to/remote/directory
例如:
put /home/user/documents/report.txt /home/user/reports/
下载文件
get /path/to/remote/file /path/to/local/directory
例如:
get /home/user/reports/report.txt /home/user/documents/
列出远程目录内容
ls /path/to/remote/directory
例如:
ls /home/user/reports/
退出sftp会话
exit
scp和sftp时,确保你有足够的权限访问源文件和目标目录。scp -P port /path/to/local/file username@remote_host:/path/to/remote/directory
sftp -P port username@remote_host
通过以上方法,你可以在Ubuntu系统中方便地进行SSH远程文件传输。