从C#进程向shell脚本传递参数
本文关键字:参数 脚本 shell 进程 | 更新日期: 2023-09-27 17:59:12
我被一个问题困扰了好几天。
我正在连接到一个linux盒子,希望运行一些脚本并收集回生成的文件。
步骤为1) 连接2) 运行一些脚本(它们是交互式的,在某个时刻需要输入)3) 获取作为结果生成的文件。
1) 我通过plink.exe(putty.exe的命令行版本)连接到linux盒子,这一步是成功的。
2) 我可以运行脚本,但当脚本运行时,它需要一些输入,我不知道如何将这些输入传递给脚本。发生的情况是程序挂起,因为脚本没有完成。
这些输入是固定的,并且在某些值之间变化,我可以将这些值硬编码到应用程序/程序中。
请帮我做这件事。提前感谢-阿卡什
您可以使用此代码
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = false;
startInfo.UseShellExecute = false;
startInfo.FileName = "YourFile.exe";
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.Arguments = "";//Arguments should be here
using (Process exeProcess = Process.Start(startInfo))
{
exeProcess.WaitForExit();
}
您可以使用exeProcess.StandardOutput.ReadToEnd()以获得结果