tail -f И разрешить ввод текста
Я хочу создать скрипт, который позволяет некоторую интерактивность
- tail -f logfile от myService
- позволяет вводить текст и отправлять его в myService
Что я пока не могу решить, так это две функции, работающие параллельно в одном терминале. Я также хотел бы достичь чего-то в TTY, я даже не знаю слово для:
,-------------------------.
| output here output here |
| output here output here |
|-------------------------|
( fixed input line here )
-------------------------
Возможно ли это сделать с помощью серверного bash-скрипта, выполняемого через ssh? Как?
3 ответа
Это не будет возможно с bash
один, но используя dialog
с --tailbox
функция может быть то, что вы ищете.
Было бы достаточно использовать screen
или же tmux
в режиме разделения?
последовательность команд для экрана (раскладки клавиатуры по умолчанию):
screen -
tail -f <logfile>
ctrl-a shift-s
ctrl-a <tab>
ctrl-a c
<send commands via shell>
последовательность команд для tmux (раскладки по умолчанию):
tmux
tail -f <logfile>
ctrl-b "
<send commands via shell>
tail -f
никогда не завершается, так что это невозможно - ни один инструмент не может знать, когда добавить фиксированную строку вывода.
Но вы можете сделать это прямо tail
, если вы подождете, пока не будет записан лог-файл. Я предполагаю, что вы хотите отправить комбинацию в стандартный ввод какой-либо другой команды, предположительно той, которая интегрируется с вашим провайдером.
( tail /var/log/logfile ; echo "Fixed output line here" ) | /usr/bin/nextcommand