使用ssh客户端库在C#中运行OpenWRT命令

时间:2015-06-17 07:23:25

标签: c# ssh command openwrt

我想在我的C#应用​​程序中运行与Openwrt相关的命令。我使用renci ssh.net和SharpSSH库来运行命令。它们可以正常运行其他命令,例如免费,猫,df等...但返回没有找到其他像uci和wifi.Here是我的代码运行没有任何错误:

SshClient Client = new SshClient("192.168.1.1", "root", "12334456");
Client.Connect();
SshCommand sc= Client.CreateCommand("uci set wireless.@wifi-iface[1].disabled=1");
sc.Execute();

运行sc.error后,其值低于:

"ash: uci: not found"

还运行其他命令,如wifi也有类似的结果。我没有使用putty这样的问题。 如何在我的c#应用程序中运行这些命令?

1 个答案:

答案 0 :(得分:0)

经过几天的尝试和错误,最后有点Chilkat软件支持回答我的问题:

  

我认为解决方案是不使用SendReqExec而是使用shell   会话(如PuTTY)。 SendReqExec方法相当于   通过" rexec"运行远程命令Linux / Unix命令。不是   与完整的shell会话完全相同。

大多数SSH库都有像stream或shell这样的东西。我试试,错误不再出现了。