Итак, у меня есть скрипт, который запускает службу и обрабатывает файл журнала до тех пор, пока служба окончательно не инициализирует. Для достижения этой цели я использовал следующее: Linux: Block until a string is matched in a file ("tail + grep with blocking")Выход хвостового хвоста в скрипт bash в настоящее время запущен
Теперь я хочу, чтобы мой пользователь увидел выходные данные хвоста, когда хвост начинается, чтобы они могли отслеживать ход обслуживания. Я знаю несколько способов назад об этом, например, разворачивание нового окна и вывод всех хвостов на новый дескриптор. Это работает только тогда, когда пользователь находится на фактической рабочей станции, но скрипт взаимодействует удаленно через SSH. Так что это не сработает в моем случае.
Я надеюсь, что кто-то здесь знает, как проложить хвост к рабочему окну, тем временем сохраняя вывод хвостового файла только одной строкой. Я хочу избежать извержения всего вывода на экран сценариев.
Если я слишком расплывчатый, дайте мне знать. Я могу опубликовать скриншот, чтобы лучше объяснить, чего я пытаюсь достичь.
Спасибо
какой ответ оттуда вы использовали? Что вы имеете в виду, когда говорите «перетащите хвост в текущее окно, тем временем сохраняя вывод хвостового файла только одной строкой», вы хотите, чтобы весь журнал показывался или только строка, которую вы ищете? –
@EtanReisner Первый ответ. 'grep -q 'PATTERN' <(tail -f file.log)'. И хотите, чтобы весь журнал был подключен к окну, выполняющему сценарий, но я надеюсь, что вместо того, чтобы извергать весь вывод, мы можем обрезать его до одной строки. Хотелось бы, чтобы я знал правильную терминологию, я уверен, что это, вероятно, поможет вам лучше понять, что я прошу. – user0000001
Это часть, которую я не понимаю. Как вы ожидаете показать весь файл журнала в одной строке? Вы хотите, чтобы одна строка постоянно обновлялась по мере появления новых строк в журнале? Как «строка состояния»? –