Überwachung der Befehlsausgabe in SSH.NET in Echtzeit

Es gibt ein lang laufendes Skriptscript.sh auf einem entfernten Linux-Rechner. Ich muss es starten und seine Aktivität in Echtzeit überwachen. Das Skript kann während seiner Aktivität an @ ausgegeben werdstdout undstderr. Ich suche nach einer Möglichkeit, beide Streams zu erfassen.

Ich benutze Renci SSH.NET zum Hochladenscript.sh und starte es, also wäre es großartig, eine Lösung zu sehen, die an diese Bibliothek gebunden ist. In meinen Augen ist die perfekte Lösung die neue Methode:

var realTimeScreen= ...;

var commandExecutionStatus = sshClient.RunCommandAsync(
    command: './script.sh',
    stdoutEventHandler: stdoutString => realTimeScreen.UpdateStdout(stdString)
    stderrEventHandler: stderrString => realTimeScreen.UpdateStderr(stderrString));
...
commandExecutionStatus.ContinueWith(monitoringTask =>
{
    if (monitoringTask.Completed)
    {
        realTimeScreen.Finish();
    }
});

Antworten auf die Frage(4)

Ihre Antwort auf die Frage