Что я хочу сделать - Начните записывать CHANGES в файл журнала с помощью пользовательского кода клиента ssh ***. Через некоторое время (которое не является фиксированным значением и основано на событиях), выпустите команду, чтобы остановить хвост. Это команда, которую я использую для записи последних изменений в файл журнала - tail -f logfile.txt
Я хочу иметь возможность закончить его чем-то вроде :q
, который я могу выпустить из script. Мне не нужны команды клавиатуры, например ctrl + c
.
*** Псевдокод для моего пользовательского кода клиента ssh (написанный на языке oop)
include ssh-api
ssh = getSSHConnection();
cmd = 'cd to folder';
ssh.command(cmd);
cmd = 'tail -f log.txt';
ssh.command(cmd);
wait for special event to occur...
cmd = 'stop the tail now!'
out = ssh.command(cmd);
print "the changes made to log file were\n" + out;
У меня нет доступа для записи на сервер, на котором находится файл журнала.
Что я пробовал - http://www.linuxquestions.org/info/red-hat-31/how-to-stop-tail-f-in-scipt-529419/
Я не могу понять решение там (его в сообщении 2). Может кто-нибудь объяснить это решение или предложить другой способ сделать это?
Спасибо.