Назначьте непрерывный поток переменной и обработайте переменную

Сеанс SSH не завершится, пока команда (сценарий) не завершит выполнение на удаленном сервере.

В зависимости от того, выводит ли сценарий данные в файл на сервере или выводит данные на стандартный вывод, вы можете сделать одно из двух.

  1. Если он выводит данные в файл на сервере:

     ssh user @ host script.sh 
    scp user @ host: remote_output local_output 
    process_output local_output 
     

    Это в основном использует scp для копирования данных с сервера на локальный компьютер.

  2. Если он выводит данные в стандартный вывод:

     ssh user @ host script.sh> local_output 
    process_output local_output 
     

    Это перенаправляет стандартный вывод скрипта в локальный файл .

Чтобы сначала запустить программу, а затем ждать:

ssh user@host script.sh &

# do other stuff

wait
scp user@host:remote_output local_output
process_output local_output

или

ssh user@host script.sh >local_output &

# do other stuff

wait
process_output local_output

wait приостанавливает скрипт до тех пор, пока не будет выполнена команда ssh (которая выполняется как фоновый процесс) выходы.

1
14.07.2016, 02:15
0 ответов

Теги

Похожие вопросы