推荐一个开源的DotNet下的SSH库,可以在.NET中执行LINUX上的命令

本文介绍了一种在DotNet中直接调用Linux程序的方法,通过使用一个名为Granados的开源SSH库,实现了发送Linux命令并获取结果的功能。提供了一个简易的EasySSH类封装实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    近日需要写一个小程序,想要在DotNet中调用Linux上的一个程序。开始原本是想在Linux上写个TCP服务程序,然后在DotNet中使用Socket进行通信。后来觉得专门写一个服务器程序实在太麻烦,在sf.net上逛了逛,终于发现了一个开源的DotNet下的SSH库: http://prdownloads.sourceforge.net/granados/granados200.tar.gz?use_mirror=easynews
     从这里下载源码: http://easynews.dl.sourceforge.net/sourceforge/granados/granados200.tar.gz
    郁闷的是,这个库居然没文档,根本不知道怎么使用。还好从源码里面发现一个Test.cs的文件,可以供参考。

   我自己封装了一个简单的EasySSH类,可以执行Linux上的命令,并返回结果。从这里下载: https://p-blog.youkuaiyun.com/images/p_blog_youkuaiyun.com/ah__fu/EasySSH.rar.jpg   下载后把jpg的后缀去掉即可。

EasySSH的使用方法如下:
using  System;
using  Granados;
class  Test
... {
    
static void Main(string[] args)
    
...{
        EasySSH ssh 
= new EasySSH(new System.Net.IPEndPoint(
            System.Net.IPAddress.Parse(
"192.168.0.2"), 22), 
            
"root""password");
        
while (!ssh.IsReady)
        
...{
            System.Threading.Thread.Sleep(
100);
        }

        Console.WriteLine(ssh.SendCommand(
"ls -l"));
        ssh.Close();
        Console.WriteLine(
"==============================");
        Console.ReadLine();
    }

}

欢迎大家提出意见,谢谢!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值