1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-11-23 22:05:15 +02:00
Files
OpenIntegrations/docs/en/md/SSH/Common-methods/Execute-command.mdx
Vitaly the Alpaca (bot) 9be4b23629 Main build (Jenkins)
2025-10-31 15:42:42 +03:00

114 lines
3.4 KiB
Plaintext
Vendored

---
sidebar_position: 3
description: Execute command and other functions to work with SSH in the Open Integration Package, a free open-source integration library for 1C:Enterprise 8, OneScript and CLI
keywords: [1C, 1С, 1С:Enterprise, 1С:Enterprise 8.3, API, Integration, Services, Exchange, OneScript, CLI, SSH]
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Execute command
Executes the specified command
`Function ExecuteCommand(Val Connection, Val Command) Export`
| Parameter | CLI option | Type | Required | Description |
|-|-|-|-|-|
| Connection | --conn | Arbitrary | ✔ | Existing connection or connection configuration |
| Command | --comm | String | ✔ | Command text |
Returns: Map Of KeyAndValue - Processing result
<br/>
```bsl title="1C:Enterprise/OneScript code example"
Host = "172.33.0.13";
Port = "2222";
UseProxy = True;
ProxySettings = Undefined;
AuthorizationType = "By login and password";
If AuthorizationType = "By login and password" Then
Login = "bayselonarrend";
Password = "12we...";
SSHSettings = OPI_SSH.GetSettingsLoginPassword(Host, Port, Login, Password);
ElsIf AuthorizationType = "By key" Then
Login = "bayselonarrend";
PrivateKey = "./ssh_key";
PublicKey = "./ssh_key.pub";
SSHSettings = OPI_SSH.GetSettingsPrivateKey(Host, Port, Login, PrivateKey, PublicKey);
Else
Login = "bayselonarrend";
SSHSettings = OPI_SSH.GetSettingsViaAgent(Host, Port, Login);
EndIf;
If UseProxy Then
ProxyType = "http"; // http, socks5, socks4
ProxyAddress = "127.0.0.1";
ProxyPort = "8071";
ProxyLogin = "proxyuser";
ProxyPassword = "12we...";
ProxySettings = OPI_SSH.GetProxySettings(ProxyAddress, ProxyPort, ProxyType, ProxyLogin, ProxyPassword);
EndIf;
Connection = OPI_SSH.CreateConnection(SSHSettings, ProxySettings);
If OPI_SSH.IsConnector(Connection) Then
Result = OPI_SSH.ExecuteCommand(Connection, "whoami");
Else
Result = Connection; // Error of connection
EndIf;
```
<Tabs>
<TabItem value="bash" label="Bash" default>
```bash
# JSON data can also be passed as a path to a .json file
oint ssh ExecuteCommand \
--conn "{'set':{'auth_type':'private_key','host':'172.33.0.13','port':'2222','username':'bayselonarrend','key_path':'***','pub_path':'C:\\Users\\bayse\\AppData\\Local\\Temp\\vipxbxrz.y0f.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 data can also be passed as a path to a .json file
oint ssh ExecuteCommand ^
--conn "{'set':{'auth_type':'private_key','host':'172.33.0.13','port':'2222','username':'bayselonarrend','key_path':'***','pub_path':'C:\\Users\\bayse\\AppData\\Local\\Temp\\vipxbxrz.y0f.tmp'},'proxy':{'server':'127.0.0.1','port':'8071','proxy_type':'http','login':'proxyuser','password':'***'}}" ^
--comm "whoami"
```
</TabItem>
</Tabs>
```json title="Result"
{
"exit_code": "0",
"result": true,
"stderr": "",
"stdout": "bayselonarrend"
}
```