скрипт для поиска строки в лог-файлах на удаленных машинах и копирования соответствующего текста - PullRequest
0 голосов
/ 13 октября 2011

Я хотел бы написать скрипт (в системах на основе Linux), который выполняет следующее:

  1. У меня есть список удаленных машин, например, mc1, mc2, mc3 и т. Д.
  2. на каждой из этих машин у меня есть лог-файл, например, для /var/log/mail.log
  3. У меня есть уникальный идентификатор
  4. Этот уникальный идентификатор будет присутствовать только в одном лог-файле на любой из этих машин
  5. Теперь мне нужно найти этот идентификатор во всех тех лог-файлах, которые хранятся на этих машинах, и получить соответствующую строку.

Я думаю об использовании bash / grep / ssh для этого, но не знаю как :( Может кто-нибудь, пожалуйста, помогите мне сделать это:)

1 Ответ

0 голосов
/ 13 октября 2011

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

ssh user@mc1 -c "echo "Machine: mc1; grep $UNIQUE_ID /var/log/mail.log; echo ---------;"
ssh user@mc2 -c "echo "Machine: mc2; grep $UNIQUE_ID /var/log/mail.log; echo ---------;"
ssh user@mc3 -c "echo "Machine: mc3; grep $UNIQUE_ID /var/log/mail.log; echo ---------;"
ssh user@mc4 -c "echo "Machine: mc4; grep $UNIQUE_ID /var/log/mail.log; echo ---------;"
...