我必须构建一个应用程序,在按钮单击开始时使用putty.exe传递命令如何使用process.start完成?
Process.start(@"C:\putty.exe")
ProcessStartInfo startinfo = new ProcessStartInfo();
startInfo.FileName=@"C:\putty.exe"
startInfo.Arguments = "some load session";
这是我目前的代码,但我想将某些脚本和命令推送到putty终端
答案 0 :(得分:0)
看起来PuTTY的命令行支持相当小,但-m
选项可能有效:
来自http://the.earth.li/~sgtatham/putty/0.67/htmldoc/Chapter3.html#using-cmdline
3.8.3.6 -m:从文件中读取远程命令或脚本
-m选项执行与PuTTY配置框的SSH面板中的“远程命令”框类似的功能(请参阅第4.18.1节)。但是,-m选项需要获得本地文件名,并且它将从该文件中读取命令。
对于某些服务器(特别是Unix系统),您甚至可以在此文件中放置多行,并按顺序执行多个命令,或者整个shell脚本;但这可以说是一种滥用,并且无法在所有服务器上运行。特别是,众所周知,不能使用某些“嵌入式”服务器,例如Cisco路由器。
您必须先将命令放在文件中,然后将 传递给PuTTY,但对于简单的任务,它可以正常工作。
正如对该问题的评论所述,Plink听起来更适合您尝试做的事情,因为它(似乎)通过StandardInput
支持完全互动的会话您将从StandardOutput
返回的对象上的Process.Start()
属性。