Stop Tail, когда определенная строка найдена в файле журнала

Вы можете попробовать следующий тип:

#!/bin/bash
 declare -a arr

 i=0
 j=0

  for dir in $(find /home/rmajeti/programs -type d)
   do
        arr[i]=$dir
        i=$((i+1))
   done


  while [ $j -lt $i ]
  do
        echo ${arr[$j]}
        j=$((j+1))
  done
2
задан Inder 16 January 2019 в 09:07
поделиться

2 ответа

Вы должны указать, сколько совпадений вам нужно. Так как вам нужно сначала нажать

tail -f server.log | grep -m 1 "mystring"

, как только «mystring» найдена для первого удара, программа автоматически закроется.

0
ответ дан rɑːdʒɑ 16 January 2019 в 09:07
поделиться

Вы можете попробовать что-то вроде:

tail -f my-file.log | awk '/Server running at http/ { print | bash file_with_code}'

P.S. вместо другого файла это может быть функция в том же самом скрипте, разумеется, что в таком случае вам не нужно произносить bash перед функцией

Другое возможное решение:

0
ответ дан Inder 16 January 2019 в 09:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: