составление нескольких файлов и ввод термина поиска из файла, поиск элементов поиска с именами файлов - PullRequest
1 голос
/ 16 апреля 2019

В настоящее время это работает нормально, хочу добавить следующие возможности: труба поиска элементов из mygrepitemslist.txt (строка за строкой) вместо того, чтобы я явно указал error1 и error2 (бонус, если пробелы могут быть включены в поиск)

другими словами хочу что-то прочитать файл mygrepitemslist.txt и труба к grep в этом примере кода

вместо приведенного ниже кода: grep "error1 \ | error2"

mygrepitemslist.txt имеет: Error1 ошибки ошибка3 с пробелом ошибка4 с несколькими пробелами

Хотелось бы использовать то, что у меня есть, потому что я использую это для других целей, и это знакомо, просто застрял в том, как передать в него строки grep из файла, а затем вывести совпадение с именем файла

tail -Fn0 /var/log/*.log | \
while read line ; do
      echo "$line" | \
      grep "error1\|error2" #pipe mygrepitemslist.txt linebyline here?
      if [ $? = 0 ]
      then
              echo "$line" #how to show error + filename here?
      fi
      done

Общие результаты:

хочет подписаться на несколько файлов

поиск строк, считанных из файла mygrepitemslist.txteach, строка - поисковый запрос

вывод: ошибка поиска с соответствующим именем файла

1 Ответ

0 голосов
/ 17 апреля 2019

вы можете использовать опцию -f для указания файла с шаблонами
tail -Fn0 /var/log/*.log | grep -of mygrepitemslist.txt

...