Я пишу микросервис в Node.js, который выполняет определенную операцию командной строки, чтобы получить определенную часть информации. Служба работает на нескольких серверах, некоторые из них в Linux, некоторые в Windows. Я использую ssh2-exec
для подключения к серверам и выполнения команды, однако мне нужен способ определения ОС сервера для выполнения правильной команды.
let ssh2Connect = require('ssh2-connect');
let ssh2Exec = require('ssh2-exec');
ssh2Connect(config, function(error, connection) {
let process = ssh2Exec({
cmd: '<CHANGE THE COMMAND BASED ON OS>',
ssh: connection
});
//using the results of process...
});
У меня есть идея для решения: следуя этому вопросу , заранее запустите какую-нибудь другую команду и определите ОС по выводу указанной команды; Тем не менее, я хочу узнать, есть ли более «формальный» способ достижения этого, в частности, с использованием библиотеки SSH2
.