C#远程执行Linux系统中Shell命令和SFTP上传文件
2024-10-09 00:06:07
一、工具:SSH.Net
网址:https://github.com/sshnet/SSH.NET
二、调用命令代码:
Renci.SshNet.SshClient ssh = new Renci.SshNet.SshClient("192.168.1.104", "sindrol", "");
ssh.Connect();
while (true)
{
Console.WriteLine("please input command:");
var line = Console.ReadLine();
if (string.IsNullOrWhiteSpace(line)) continue;
var cmd = ssh.RunCommand(line);
if (!string.IsNullOrWhiteSpace(cmd.Error))
Console.WriteLine(cmd.Error);
else
Console.WriteLine(cmd.Result);
}
ssh.Disconnect();
三、上传文件代码:
Renci.SshNet.SftpClient sftp = new Renci.SshNet.SftpClient("192.168.1.104", "sindrol", "");
sftp.Connect();
FileInfo fi = new FileInfo(@"D:\Project\Matlab\rcnn.rar");
var allLength = fi.Length;
sftp.UploadFile(new System.IO.FileStream(fi.FullName, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite, System.IO.FileShare.ReadWrite), "/home/sindrol/aa.zip", (pro) => { Console.WriteLine((pro * 1.0d / allLength * 1.0d).ToString("P")); });
Console.WriteLine("finished.");
while (true)
{
System.Threading.Thread.Sleep();
}
四、用法:
1、一般用于将一个本地上写好的bash角本,通过Sftp上传到服务器,然后执行运行命令。
2、由于是C#程序实现的,所以可以清松实现多台批量操作。
最新文章
- Windows Azure Storage (6) Windows Azure Storage之Table
- 一些很棒的js代码
- yield个人理解及简明示例
- ahjesus js 快速求幂
- iOS网络传输Delegate不被触发的本质原因
- SSH与SSL
- Java模拟网站登录
- Android_Dialog
- 《A First Course in Probability》-chaper3-条件概率和独立性-P(·|F)是概率
- 代码之美——Doom3源代码赏析2
- COJ 0967 WZJ的数据结构(负三十三)
- unable to load default svn client 和 Eclipse SVN 插件与TortoiseSVN对应关系
- 使用WCF Data Service 创建OData服务
- linux进程管理之进程创建
- Linux的硬盘分区
- [Swift]LeetCode883. 三维形体投影面积 | Projection Area of 3D Shapes
- halcon几何变换(仿射变换)
- [CocoaPods]入门
- Sitecore CMS中删除项目
- Lerning Entity Framework 6 ------ Inserting, Querying, Updating, and Deleting Data
热门文章
- SpringBoot 中使用 @Value 为 static 变量赋值
- java程序员必知的8大排序
- 使用开源库 Objective-C RegEx Categories 处理正则表达式
- go1.8之安装配置具体步骤
- 逍遥法外第一季/全集How To Get Away With Murder迅雷下载
- Material Designer的低版本兼容实现(一)—— 简介 &; 目录
- Python数据分析笔记
- FastJson、Jackson、Gson进行Java对象转换Json的细节处理
- go语言之进阶篇多任务资源竞争问题
- 升级Https前的可行性验证(一)