Как остановить tail-f, кроме использования kill

Я хочу написать сценарий оболочки, чтобы определить, если моя программа запускается успешно.

существует файл журнала, созданный программой. Когда файл журнала содержит новую строку: Server startup in, затем остановите команду bash.

Я нашел одно решение с kill:

sh -c 'tail -f logfile | { sed "/Server startup in/ q" && kill $$ ;}'

но это не работает, когда я положил его на мою работу Дженкинс, есть ли другой способ решить эту проблему?

2
задан chaos
15.05.2023 13:39 Количество просмотров материала 3652
Распечатать страницу

1 ответ

попробуй это:

tail -f logfile | grep -q "Server startup in"

Он будет искать строку logfile и grep завершает работу автоматически после появления первой новой строки, содержащей строку. Как только команда завершится, строка будет найдена, и вы сможете продолжить выполнение скрипта..

0
отвечен chaos 2023-05-16 21:27

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх