Renci.SshNet и C#

  • Автор темы Автор темы MaxLucky
  • Дата начала Дата начала

MaxLucky

Client
Регистрация
13.08.2017
Сообщения
239
Реакции
18
Баллы
18
Здравствуйте, подскажите пожалуйста, как правильно оформить код, чтобы он работал. Необходимо в строку выполнения определённой команды shellStream.WriteLine вставить значение из переменной

Приложил скриншот примера
 

Вложения

  • zennoposter1.png
    zennoposter1.png
    35,1 KB · Просмотры: 36
В след. раз прикладывайте код текстом, чтобы можно было помочь в удобном формате)
Где вторая стрелочка замените слово scriptstringremotelocal на такую конструкцию(вместе с кавычками):
"+stringremotelocal+"
 
  • Спасибо
Реакции: MaxLucky
В след. раз прикладывайте код текстом, чтобы можно было помочь в удобном формате)
Где вторая стрелочка замените слово scriptstringremotelocal на такую конструкцию(вместе с кавычками):
"+stringremotelocal+"
Супер. Огромное спасибо!)
 
В след. раз прикладывайте код текстом, чтобы можно было помочь в удобном формате)
Где вторая стрелочка замените слово scriptstringremotelocal на такую конструкцию(вместе с кавычками):
"+stringremotelocal+"
Скажите пожалуйста, а возможно ли получать зенкой ответы от сервера, чтобы можно было отладить весь процесс? Сейчас просто примерно время высчитываю и паузы ставлю, чтобы команды успели прописаться и так далее
 
Скажите пожалуйста, а возможно ли получать зенкой ответы от сервера, чтобы можно было отладить весь процесс? Сейчас просто примерно время высчитываю и паузы ставлю, чтобы команды успели прописаться и так далее
Если я правильно понял вопрос, вы имеете ввиду ожидание некого элемента. Вот код-пример, для понимания в какую сторону смотреть. Код ожидает некий элемент по xpath пути и выходит по красной если элемент не найден и соответственно по зелёной если ожидаемый элемент всё же появился.

C#:
Развернуть Свернуть Копировать
Random rand = new Random();
instance.ActiveTab.WaitDownloading();

var xpath = "//a[contains(@class, 'j-close popup__close close')]"; //Подставить свой XPATH

HtmlElement he = instance.ActiveTab.FindElementByXPath(xpath, 0);
var i = 0;
while (he.IsVoid && i < 30) {
    System.Threading.Thread.Sleep(rand.Next(500, 1000));
    he = instance.ActiveTab.FindElementByXPath(xpath, 0);
    i++;
}
if (he.IsVoid){
    throw new Exception("Не найдена кнопка Закрыть");
}

Тут мы смотрим 30 раз с паузой от пол секунды до секунды на наличие нужного элемента(можно скорректировать кол-во "ожиданий" и его длительность).
 
Если я правильно понял вопрос, вы имеете ввиду ожидание некого элемента. Вот код-пример, для понимания в какую сторону смотреть. Код ожидает некий элемент по xpath пути и выходит по красной если элемент не найден и соответственно по зелёной если ожидаемый элемент всё же появился.

C#:
Развернуть Свернуть Копировать
Random rand = new Random();
instance.ActiveTab.WaitDownloading();

var xpath = "//a[contains(@class, 'j-close popup__close close')]"; //Подставить свой XPATH

HtmlElement he = instance.ActiveTab.FindElementByXPath(xpath, 0);
var i = 0;
while (he.IsVoid && i < 30) {
    System.Threading.Thread.Sleep(rand.Next(500, 1000));
    he = instance.ActiveTab.FindElementByXPath(xpath, 0);
    i++;
}
if (he.IsVoid){
    throw new Exception("Не найдена кнопка Закрыть");
}

Тут мы смотрим 30 раз с паузой от пол секунды до секунды на наличие нужного элемента(можно скорректировать кол-во "ожиданий" и его длительность).
Я немного не об этом. Смотрите, я через Renci.SshNet отправляю команды серверу. Но я не вижу, что в ответ присылает сервер для отладки. Например скрипт может выполняться 60 или 120 секунд. Я ставлю с запасом 150, чтобы не было ошибок. И вот вопрос, возможно ли получать ответы от сервера, чтобы можно было выстроить гибкую логику? Или это невозможно через Renci.SshNet
 
возможно ли получать ответы от сервера, чтобы можно было выстроить гибкую логику? Или это невозможно через Renci.SshNet
C#:
Развернуть Свернуть Копировать
var client = new SshClient(host, port, username, password);
var cmd = client.RunCommand(command);
return cmd.Result;
Ждёт окончания выполнения операции и возвращает результат
 
  • Спасибо
Реакции: MaxLucky

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)