我想通过ssh将一个文件从Windows复制到Pi板。
我正在使用Windows窗体构建GUI。
来到GUI部分我找到了ssh.net库,稍后我将使用它。但在此之前,我想了解它的工作原理以及要使用的SCP命令。作为第一步,我想知道SCP命令的确切运作方式。为此,我想使用windows命令行将文件从Windows复制到Pi板,通过ssh。现在我该怎么做呢?程序是什么?我搜索了互联网,但没有得到正确的信息。
注意:我知道我可以使用Filezilla客户端或putty来实现这一点,但我的座右铭是构建自己的GUI。
我的GUI要求:首先,我想与Pi板建立连接,其次,我希望我的GUI浏览需要复制到Pi板的文件,第三,我想在GUI中修复Pi目标文件夹本身(无法访问用户,后端我将目标文件夹修复为不可更改),第四,当用户点击下载按钮文件时,应该下载到Pi板中的固定目标文件夹,并带有进度条指示器以完成文件传输 - 需要实现这一目标的建议?基本上,我希望用户使用我的GUI从窗口中选择一个特定的文件,按钮点击文件应该下载到Pi板。
答案 0 :(得分:1)
不要使用SCP,请使用SFTP。
使用SSH.NET的简单SFTP上传示例:
using (var client = new SftpClient(host, username, password))
{
client.Connect();
using (var fileStream = new FileStream(uploadFile, FileMode.Open))
{
client.UploadFile(fileStream, Path.GetFileName(uploadFile));
}
}
对于其他选项/库,另见:
How do I upload a file to an SFTP server in C# / .NET?