c# 使用ssh.net 上传文件
在ssh.net 客户端实例下无法普通用户切换到su root 超级用户,原因是tty 的不支持,具体原因未查, 连接时用超级用户,问题解决
使用ssh.net 能实现远程命令, 使用其中的sftp 文件传输类,也可实现上传下载
sftp连接
Renci.SshNet.SshClient ssh;
Renci.SshNet.SftpClient sftp;
public void SftpConnect(string addr, int port, string user,string pass)
{
sftp = new Renci.SshNet.SftpClient(addr,port,user, pass);
}
sftp上传
public void UploadData(string filename,string linuxfilepath)
{
sftp.Connect();
FileInfo fi = new FileInfo(filename);
var allLength = fi.Length;
sftp.UploadFile(new System.IO.FileStream(fi.FullName, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite, System.IO.FileShare.ReadWrite), linuxfilepath/* "/home/sindrol/aa.zip"*/, (pro) => { Console.WriteLine((pro * 1.0d / allLength * 1.0d).ToString("P")); });
Console.WriteLine("finished.");
while (true)
{
System.Threading.Thread.Sleep();
}
}
注意:报错failtrue
UploadFile 函数中 文件目录是包含文件名的目录,不是文件夹目录linuxfilepath 像这个 /* "/home/sindrol/aa.zip"*/ 加了异常处理的方法
public bool SftpConnect(string addr, int port, string user,string pass,out string mess)
{
bool result = false;
try
{
// using (sftp = new Renci.SshNet.SftpClient(addr, port, user, pass))
sftp = new Renci.SshNet.SftpClient(addr, port, user, pass);
sftp.Connect();
mess = "连接成功";
return result = true;
}
catch (Exception ex)
{
mess = "连接失败,错误:"+ ex.Message;
return result = false;
}
}
c# 使用ssh.net 上传文件的更多相关文章
- ssh centos 上传文件
ssh centos 上传文件命令(ftp开不起的情报况下): rz -be 下载文件: sz
- JAVAWeb SSH框架 上传文件,如2007的EXCEL
下面的代码是上传EXCEL的代码,其实,就是在上传文件到服务器,代码都差不多,只是接收的文件的类型改一下即可. 1.jsp 用的是struts2 标签 代码: <s:file name=&quo ...
- .Net core 使用SSH.Net上传到SFTP服务器和和下载文件
今天换了个服务器,文件上传到sftp服务器上了,那么ftp和sftp服务器有什么区别呢,正常来说sftp会更安全一些. 废话不多说,首先.net core 上传到sftp需要引入一个Nuget包,就是 ...
- 关于ssh上传文件
今天用ssh传项目到公司总部的服务器上,报了错误: encountered 1 errors during the transfer 重启ssh再次上传还是一样的错误,然后我让公司那里重启一下服务器, ...
- Linux 将本地文件上传Linux服务器, 即ssh 命令上传本地文件
http://blog.csdn.net/rodulf/article/details/71169996 利用ssh传输文件 在linux下一般用scp这个命令来通过ssh传输文件. 1.从服务器上下 ...
- xshell ssh 上传文件
一.通过xshell ssh 上传文件 [lxk@localhost ~]$ yum install lrzsz 安装 [lxk@localhost ~]$ rz 上传文件
- SSH Secure File Transfer上传文件错误:encountered 1 errors during the transfer解决办法
在使用SSH 工具向Linux服务器上传文件时,弹出 encountered 1 errors during the transfer 错误. 解决方案: 1.准备上传的那个文件所在目录路径存在(), ...
- 通过ssh上传文件到目标主机
需要通过ssh上传文件到目标主机上,之前一直时通过ssh客户端来传文件的,这次因为本地没装客户端,所以考虑直接用终端通过ssh连接主机进行文件传输. 只需要一条命令就可以了: scp ./serve ...
- ssh 下载文件以及上传文件到服务器
https://blog.csdn.net/jackghq/article/details/64124062 scp john@192.168.1.100:~/Desktop/MHN_error_so ...
随机推荐
- 电子表格Excel
电子表格Excel 本次课内容一.认识下Excel1.扩展名 office2007以前,扩展名是xls office2007,扩展名是xlsx 2.文件扩展名是xls或xlsx的文件,excel电子表 ...
- GIS案例学习笔记-明暗等高线提取地理模型构建
GIS案例学习笔记-明暗等高线提取地理模型构建 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 目的:针对数字高程模型,通过地形分析,建立明暗等高线提取模型,生成具有 ...
- Android-Anim-Playground
Android-Anim-Playground Latest animation ideas I developed to make apps more attractive. Why having ...
- pycahrm 激活
Linux在/etc/hosts中添加 0.0.0.0 account.jetbrains.com就好,直接添加:0.0.0.0 account.jetbrains.comwindows的话没记错应该 ...
- java中Integer和int的区别(转)
int和Integer的区别 1.Integer是int的包装类,int则是java的一种基本数据类型 2.Integer变量必须实例化后才能使用,而int变量不需要 3.Integer实际是对象的引 ...
- led 的 platform驱动实现
http://www.linuxidc.com/Linux/2014-03/97756.htm http://blog.sina.com.cn/s/blog_6b94d5680101cn0t.html ...
- mui-图文列表 图片大小问题
下面是源码,不能调节图片大小 <ul class="mui-table-view"> <li class="mui-table-view-cell mu ...
- java 集合 Se HashTreeSet
Set接口 Set是Collection的子接口,与List相对 Set集合中的元素的特点是1,无序性 2,无下标3,无重复的元素 Set是个接口,所以无法直接创建对象,要依赖它的实现类来创建对象 ...
- FP ABPPMGR表 其它常用存储过程
SAP_MATERIAL_SO:处理材料订单缺少BOM,ROUTING信息 1. 增加这部分订单的BOM信息 2. 增加这部分订单材料的ROUTING信息 3. 如果是 ...
- 更新linux下python版本
# 安装所有的开发工具包 yum groupinstall -y "Development tools" # 安装其它的必需包 yum install -y zlib-devel ...