通过SSH在Windows 11和Linux之间传输文件
1.背景
在多平台环境中进行文件传输是一项常见任务,尤其是在开发和运维过程中。Windows和Linux是两种常见的操作系统,尽管它们的文件系统和命令行界面有所不同,但通过安全外壳(SSH)协议可以实现无缝的文件传输。SSH不仅提供了安全的远程登录功能,还包括文件传输的能力,这对于跨平台数据交换尤为重要。
OpenSSH
OpenSSH是一套工具,它包括了远程登录、远程文件传输和远程命令执行等功能。OpenSSH中的scp(secure copy)命令是用于在不同机器之间安全传输文件的工具,支持通过SSH进行文件复制,确保数据传输的安全性和完整性。
在Windows 10和Windows 11中,Microsoft已经内置了OpenSSH客户端,这使得Windows用户可以直接在命令行中使用SSH和SCP进行远程连接和文件传输。
从windows上通过ssh连接到ubuntu子系统

ssh 用户名@你的ip地址
用户名是你登录Linux的用户名称,ip地址是上面看到的12位数
SCP(Secure Copy Protocol)
SCP是一种基于SSH的文件传输协议,允许用户在本地和远程计算机之间复制文件。它使用SSH协议进行身份验证和数据加密,确保传输过程中的安全性。SCP命令的基本格式如下:
scp [options] source_file [user@]host:destination_path
source_file:是要传输的文件路径
[user@]host:是目标机器的用户名和主机名或IP地址
destination_path:是目标路径。
2.常见操作
2.1上传本地文件到服务器
例如:从Windows11系统D盘下面的 clustered_data_with_pca.csv 文件,上传到Linux系统中 /root/heat/logs 路径下
scp D:\clustered_data_with_pca.csv root@192.168.113.131:/root/heat/logs

切换到Linux系统中,查看文件是否存在

2.2从Linux服务器上下载文件
例如:从Linux系统 中文件 /root/heat/logs/2024-07-25-Info.log ,下载到Windows系统中 D盘根目录下,执行效果如下:
scp root@192.168.113.131:/root/heat/logs/2024-07-25-Info.log D:\

2.3从Linux系统中下载整个目录
例如:从Linux系统中将 /root/heat/logs 文件夹,下载到winodws11系统中 D盘根目录下
scp -r root@192.168.113.131:/root/heat/logs D:\

2.4从Windows系统上传目录到服务器中
例如:从windows系统中将D:\CanonScan 文件夹目录上传到 Linux系统中/root/heat/目录下
scp -r D:\CanonScan root@192.168.113.131:/root/heat

从linux系统中查看:

浙公网安备 33010602011771号