Pergunta

Eu estou preso com um problema de muitos dias.

Eu estou conectando a uma caixa de Linux e deseja executar alguns scripts e recolher de volta o arquivo gerado.

As etapas são 1) Ligue 2) executar alguns scripts (que são entradas interativas e precisam, em algum momento) 3) obter o arquivo gerado como resultado.

1) Eu estou conectando a caixa de linux através plink.exe (versão de linha de comando de putty.exe) esta etapa é bem sucedido.

2) Eu sou capaz de executar scripts mas quando os scripts são executados que espera alguma entrada, eu não sou capaz de descobrir como passar essas entradas para o script. o que acontece é o programa paralisa como os scripts não for concluída.

Estas entradas são fixas e variam entre determinados valores, eu posso codificar esses valores em application / programa.

Por favor me ajude a fazer isso. desde já, obrigado -Akash

Foi útil?

Solução

Você pode usar este código

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();
}

Você pode usar exeProcess.StandardOutput.ReadToEnd (); para obter os resultados

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top