Новое в версии 2020.2.4

Изменения в объектной модели

Ниже указаны изменения в объектной модели в версии 2020.2.4 «1С:Исполнителя».

Получение стандартного потока вывода ошибок (stderr)

Для объектов КонсольSsh, СоединениеSsh, РезультатКомандыSsh добавлена возможность получить стандартный поток вывода ошибок (stderr), устранены расхождения в именах и методах получения потоков ввода-вывода для SSH и ПроцессОС.

Объект КонсольSsh

Для объекта КонсольSsh (подробнее):

  • добавлено свойство ПотокиОшибокИВыводаСоединены
  • добавлено свойство ПотокОшибок
  • свойство Ввод переименовано в ПотокВвода
  • свойство Вывод переименовано в ПотокВывода

Пример использования свойств ПотокВывода, ПотокВвода и ПотокОшибок

исп СоединениеАгент = новый СоединениеSsh("127.0.0.1", 1543, "admin", "123")
исп СоединениеКонсольSsh = СоединениеАгент.ОткрытьКонсоль(Ложь)
исп СоединениеКонсольSshВвод = СоединениеКонсольSsh.ПотокВвода
исп СоединениеКонсольSshВывод = СоединениеКонсольSsh.ПотокВывода
исп СоединениеКонсольSshОшибки = СоединениеКонсольSsh.ПотокОшибок

Объект СоединениеSsh

Для объекта СоединениеSsh (подробнее):

  • в методы Выполнить и ОткрытьКонсоль добавлен параметр СоединитьПотокиОшибокИВывода со значением по умолчанию Истина

Пример открытия консоли SSH с разделением потоков вывода и ошибок

исп СоединениеАгент = новый СоединениеSsh("127.0.0.1", 1543, "admin", "123")
исп СоединениеКонсольSsh = СоединениеАгент.ОткрытьКонсоль(Ложь)

Объект РезультатКомандыSsh

Для объекта РезультатКомандыSsh (подробнее):

  • добавлено свойство ПотокиОшибокИВыводаСоединены
  • добавлен метод ПолучитьПотокОшибок
  • метод ПолучитьВывод переименован в ПолучитьПотокВывода

Пример выполнения команды с разделением потоков вывода и ошибок

метод ВыполнитьКоманду(Команда: Строка): Строка
    исп Соединение = новый СоединениеSsh("192.168.0.3", 1543, "admin", "123")
    знч Результат = Соединение.Выполнить(Команда,, Ложь)
    если Результат.КодВозврата == 0
        возврат Результат.ПолучитьПотокВывода().ПрочитатьКакТекст()
    иначе
        возврат Результат.ПолучитьПотокОшибок().ПрочитатьКакТекст()
    ;
;

Указание списка известных хостов для соединения Ssh

Объект НастройкиСоединенияSsh

Для объекта НастройкиСоединенияSsh (подробнее):

  • добавлено свойство ИзвестныеХосты
  • добавлен метод УстановитьИзвестныеХосты

Пример подключения с указанием известных хостов

метод ПодключениеИзвестныеХосты(ПутьКФайлуKnownHosts: Строка)
    знч Настройки = новый НастройкиСоединенияSsh()
    Настройки.УстановитьПароль("12345")
    Настройки.УстановитьИзвестныеХосты(ПутьКФайлуKnownHosts)
    исп Соединение = новый СоединениеSsh("192.168.0.3", 1543, "admin", Настройки)
    исп Агент = Соединение.ОткрытьКонсоль()
    Агент.СтрокаПриглашения = "designer> "
    Консоль.Записать(Агент.Выполнить("-v").ПрочитатьКакТекст())
;