2015-06-22 7 views
1

Я хочу запустить длинную задачу на удаленной машине (с использованием ткани python с использованием ssh). Он записывается в файл на удаленном компьютере. Что я хочу сделать, так это запустить этот скрипт и хвост (активно отображать) содержимое файла журнала до завершения выполнения скрипта. Проблемы сlinux - работает процесс и хвост файла одновременно

python test.py & tail -f /tmp/out 

является то, что она не прекращается, когда test.py выходов. Есть ли простой трюк linux, который я могу использовать для этого, или мне нужно сделать сложный скрипт, чтобы постоянно проверять завершение первого процесса?

ответ

1

Я бы просто начал tail в фоновом режиме и процесс python на переднем плане. Когда процесс python завершится, вы можете убить tail, например:

#!/bin/bash 

touch /tmp/out # Make sure that the file exists 
tail -f /tmp/out & 
pid=$! 
python test.py 
kill "$pid"