Supondo que o nome do arquivo do arquivo que você deseja acompanhar seja file
e o nome do arquivo da lista seja list
. Eu também suponho que o arquivo list
se parece com:
10.0.0.1 Hostname1
10.0.0.2 Hostname2
Em seguida, use isto:
tail -f file | while read l; do \
while read i h; do l="${l//$i/$h}"; done <list; echo "$l"; \
done
- O comando
tail
é canalizado para um loop while que lê a linha de entrada por linha na variável$l
. - Dentro desse loop while, há outro loop while que lê o arquivo
list
linha por linha e substitui os valores delist
na variável$l
. - A linha é impressa no stdout.