Вызов SSH через system

Данный раздел предназначен для русскоязычных пользователей. Если вы владеете английским, рекомендуем также просмотреть общую ветку обсуждений на английском.
Post Reply
nvhleb
Posts: 21
Joined: 08 Feb 2019 23:35

Вызов SSH через system

Post by nvhleb »

Не работает :) . Есть команда, выполняющаяся через терминал:
ssh 10.10.10.1 -l admin -i /root/key -o StrictHostKeyChecking=no ":global TVInKitchenAllowInternet true;"

При ее вызове из скрипта

debugPrint("1");
var result = system("ssh", '10.10.10.1 -l admin -i /root/key -o StrictHostKeyChecking=no ":global TVInKitchenAllowInternet true;"');
debugPrint("2: " + result);

Возвращается "2: 65280," - код FF00 (ошибка SSH). ssh в .syscommands добавлен.

3 вопроса:
1. Что сделано не так?
2. Верно ли, что system выполняется из-под root?
3. Как получить полный вывод от выполнения команды?
nvhleb
Posts: 21
Joined: 08 Feb 2019 23:35

Re: Вызов SSH через system

Post by nvhleb »

Работает через прослойку в виде python-скрипта. Не круто. 3 вопроса актуальны :) .
User avatar
PoltoS
Posts: 7571
Joined: 26 Jan 2011 19:36

Re: Вызов SSH через system

Post by PoltoS »

1. Вы зачем-то разделили команду и аргументы. Не надо.
2. Если Z-Way из под рута, то да
3. Посмотрите доку. Массив из двух элементов: код возврата и вывод
nvhleb
Posts: 21
Joined: 08 Feb 2019 23:35

Re: Вызов SSH через system

Post by nvhleb »

Команда и аргумены разделены для того, чтобы не добавлять все возможные варианты команды в .syscommands. Работа с pyton-скриптом позволяет передать дополнительные аргументы. Почему это не работает с таким же приложением, получающим аргументы в командной строке (SSH)? Попытка передачи всех аргументов в отдельности так же не приводит к результатам.

Если можно, второй вопрос: в Z-Way Developers Documentation 2.0 ничего про возвращаемые значения команды system нет. Это ошибка и такая информация там есть?
User avatar
PoltoS
Posts: 7571
Joined: 26 Jan 2011 19:36

Re: Вызов SSH через system

Post by PoltoS »

в Z-Way Developers Documentation 2.0 ничего про возвращаемые значения команды system нет. Это ошибка и такая информация там есть?
Действительно. Поправим.

Но параметры объедините в одну строку.
Post Reply