Я возился с Tamir.SharpSsh и хотел посмотреть, возможно ли использовать его для полной реализации консольного SSH-клиента в C #. Я не имею в виду что-то вроде putty, где он на самом деле работает в собственном графическом интерфейсе, но что-то, что вы можете запустить прямо из консоли windows cmd.
Библиотека довольно хорошая, за исключением того, что она никак не обрабатывает эмуляцию терминала. Поэтому, используя SshShell, вы можете выполнять некоторые базовые действия, но результат часто бывает очень уродливым и полон случайных символов, и вы не можете взаимодействовать с такими вещами, как сценарии оболочки и т. Д.
Насколько я могу судить, SharpSSH просто перенаправляет IO на консольный IO.
Насколько сложно было бы перенаправить это в другое место и обработать эмуляцию терминала? Кроме того, уже есть библиотека эмуляции (предпочтительно C # и с открытым исходным кодом), которую я мог бы использовать?
Редактировать: Отказ от SharpSSH, см. Ответ ниже для окончательного решения, которое я придумал.