Skip to main content

Execute command

Executes the specified command

Function ExecuteCommand(Val Connection, Val Command) Export

ParameterCLI optionTypeRequiredDescription
Connection--connArbitraryExisting connection or connection configuration
Command--commStringCommand text
Returns

Map Of KeyAndValue - Processing result

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);

ElsIf AuthorizationType = "Keyboard interactive" Then

Login = "bayselonarrend";
Password = "12we...";

AnswersArray = New Array;
AnswersArray.Add(Password);

SSHSettings = OPI_SSH.GetSettingsKI(Host, Port, Login, AnswersArray);

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;
# JSON data can also be passed as a path to a .json file

oint ssh ExecuteCommand \
--conn "{'set':{'auth_type':'keyboard_interactive','host':'172.33.0.34','port':'2223','username':'bayselonarrend','keyboard_responses':['12we3456!2154']},'proxy':{'server':'127.0.0.1','port':'8071','proxy_type':'http','login':'proxyuser','password':'***'}}" \
--comm "whoami"
Result
{
"exit_code": "0",
"result": true,
"stderr": "",
"stdout": "bayselonarrend",
"close_connection": {
"result": true
}
}