You've already forked OpenIntegrations
mirror of
https://github.com/Bayselonarrend/OpenIntegrations.git
synced 2025-12-28 00:13:46 +02:00
112 lines
4.8 KiB
Plaintext
Vendored
112 lines
4.8 KiB
Plaintext
Vendored
---
|
|
sidebar_position: 3
|
|
description: Выполнить команду и другие функции для работы с SSH в Открытом пакете интеграций - бесплатной open-source библиотеке интеграций для 1С:Предприятие 8, OneScript и CLI
|
|
keywords: [1C, 1С, 1С:Предприятие, 1С:Предприятие 8.3, API, Интеграция, Сервисы, Обмен, OneScript, CLI, SSH]
|
|
---
|
|
|
|
import Tabs from '@theme/Tabs';
|
|
import TabItem from '@theme/TabItem';
|
|
|
|
# Выполнить команду
|
|
Выполняет указанную команду
|
|
|
|
|
|
|
|
`Функция ВыполнитьКоманду(Знач Соединение, Знач Команда) Экспорт`
|
|
|
|
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|
|
|-|-|-|-|-|
|
|
| Соединение | --conn | Произвольный | ✔ | Существующее соединение или конфигурация соединения |
|
|
| Команда | --comm | Строка | ✔ | Текст команды |
|
|
|
|
|
|
Возвращаемое значение: Соответствие Из КлючИЗначение - Результат обработки
|
|
|
|
|
|
|
|
```bsl title="Пример использования для 1С:Предприятие/OneScript"
|
|
Хост = "172.33.0.13";
|
|
Порт = "2222";
|
|
|
|
ИспользоватьПрокси = Истина;
|
|
НастройкиПрокси = Неопределено;
|
|
ВидАвторизации = "По логину и паролю";
|
|
|
|
Если ВидАвторизации = "По логину и паролю" Тогда
|
|
|
|
Логин = "bayselonarrend";
|
|
Пароль = "12we...";
|
|
|
|
НастройкиSSH = OPI_SSH.ПолучитьНастройкиЛогинПароль(Хост, Порт, Логин, Пароль);
|
|
|
|
ИначеЕсли ВидАвторизации = "По ключу" Тогда
|
|
|
|
Логин = "bayselonarrend";
|
|
ПриватныйКлюч = "./ssh_key";
|
|
ПубличныйКлюч = "./ssh_key.pub";
|
|
|
|
НастройкиSSH = OPI_SSH.ПолучитьНастройкиПриватныйКлюч(Хост, Порт, Логин, ПриватныйКлюч, ПубличныйКлюч);
|
|
|
|
Иначе
|
|
|
|
Логин = "bayselonarrend";
|
|
НастройкиSSH = OPI_SSH.ПолучитьНастройкиЧерезАгента(Хост, Порт, Логин);
|
|
|
|
КонецЕсли;
|
|
|
|
Если ИспользоватьПрокси Тогда
|
|
|
|
ТипПрокси = "http"; // http, socks5, socks4
|
|
|
|
АдресПрокси = "127.0.0.1";
|
|
ПортПрокси = "8071";
|
|
ЛогинПрокси = "proxyuser";
|
|
ПарольПрокси = "12we...";
|
|
|
|
НастройкиПрокси = OPI_SSH.ПолучитьНастройкиПрокси(АдресПрокси, ПортПрокси, ТипПрокси, ЛогинПрокси, ПарольПрокси);
|
|
|
|
КонецЕсли;
|
|
|
|
Соединение = OPI_SSH.ОткрытьСоединение(НастройкиSSH, НастройкиПрокси);
|
|
|
|
Если OPI_SSH.ЭтоКоннектор(Соединение) Тогда
|
|
Результат = OPI_SSH.ВыполнитьКоманду(Соединение, "whoami");
|
|
Иначе
|
|
Результат = Соединение; // Ошибка соединения
|
|
КонецЕсли;
|
|
```
|
|
|
|
|
|
<Tabs>
|
|
|
|
<TabItem value="bash" label="Bash" default>
|
|
```bash
|
|
# JSON данные также могут быть переданы как путь к файлу .json
|
|
|
|
oint ssh ВыполнитьКоманду \
|
|
--conn "{'set':{'auth_type':'private_key','host':'172.33.0.13','port':'2222','username':'bayselonarrend','key_path':'***','pub_path':'/tmp/2u1wkyyg.1uw.tmp'},'proxy':{'server':'127.0.0.1','port':'8071','proxy_type':'http','login':'proxyuser','password':'***'}}" \
|
|
--comm "whoami"
|
|
```
|
|
</TabItem>
|
|
|
|
<TabItem value="bat" label="CMD/Bat" default>
|
|
```batch
|
|
:: JSON данные также могут быть переданы как путь к файлу .json
|
|
|
|
oint ssh ВыполнитьКоманду ^
|
|
--conn "{'set':{'auth_type':'private_key','host':'172.33.0.13','port':'2222','username':'bayselonarrend','key_path':'***','pub_path':'/tmp/2u1wkyyg.1uw.tmp'},'proxy':{'server':'127.0.0.1','port':'8071','proxy_type':'http','login':'proxyuser','password':'***'}}" ^
|
|
--comm "whoami"
|
|
```
|
|
</TabItem>
|
|
</Tabs>
|
|
|
|
|
|
```json title="Результат"
|
|
{
|
|
"exit_code": "0",
|
|
"result": true,
|
|
"stderr": "",
|
|
"stdout": "bayselonarrend"
|
|
}
|
|
```
|