我想在我的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#应用程序中运行这些命令?
答案 0 :(得分:0)
经过几天的尝试和错误,最后有点Chilkat软件支持回答我的问题:
我认为解决方案是不使用SendReqExec而是使用shell 会话(如PuTTY)。 SendReqExec方法相当于 通过" rexec"运行远程命令Linux / Unix命令。不是 与完整的shell会话完全相同。
大多数SSH库都有像stream或shell这样的东西。我试试,错误不再出现了。