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 ...
随机推荐
- js文件引用js文件
我的问题是: a.jsp b.js c.js a.jsp 需要引用 b.js 里面的内容 <head> <script type="text/javascript& ...
- ArcGIS模型构建器案例教程-批量复制工作空间所有要素类
ArcGIS模型构建器案例教程-批量复制工作空间所有要素类 目的:批量复制工作空间所有要素类 工具名称:WorkspaceCopyFeatureClasses 使用方法:输入工作空间,指定输出工作空间 ...
- Html - Table 表头固定和 tbody 设置 height 在IE不起作用的解决
原文地址,转载请注明出处:http://www.cnblogs.com/jying/p/6294063.html 做项目的时候发现给 tbody设置 height 和 overflow-y 在IE下不 ...
- web自动化测试中接口测试学习笔记
一.web基础 web是实现:客户端浏览器端<—————>服务端 交互的应用: web通常包含两部分:web客户端.web服务端:web客户端技术包含html.javascript.aj ...
- 吴裕雄 12-MySQL WHERE 子句
以下是 SQL SELECT 语句使用 WHERE 子句从数据表中读取数据的通用语法:SELECT field1, field2,...fieldN FROM table_name1, table_n ...
- python字典dict的增、删、改、查操作
## python字典dict的增.删.改.查操作dict = {'age': 18, 'name': 'jin', 'sex': 'male', }#增# dict['heigh'] = 185 # ...
- SpringBoot(十一)过滤器和拦截器
v博客前言 在做web开发的时候,过滤器(Filter)和拦截器(Interceptor)很常见,通俗的讲,过滤器可以简单理解为“取你所想取”,忽视掉那些你不想要的东西:拦截器可以简单理解为“拒你所想 ...
- 在maven中classpath notfund
- dropload插件的使用(上拉下滑加载数据)
.导入 js dropload.min. js zepto.min.js <!-- jQuery1.7以上 或者 Zepto 二选一,不要同时都引用 --> $(function(){ ...
- metasploit framework(四):生成payload
RHOST是限制来源IP,这里不用修改 generate生成payload 假设'\x00'是坏字符,生成payload时就会对'\x00'进行编码,排除坏字符. -b 去掉坏字符 -t 指定生成的格 ...