kimenetre greppelés

Van egy hosszú és összetett ciklusom és a kimenetre szeretnék greppelni. Nézzük hogyan!

Pl:

for i in $(cat /var/log/apache2/access.log | grep valami | awk '{ print $1 }' | sort | uniq); do resolveip $i; done

Ez a példa eddig feloldja a látogatók ip címét. Viszont én erre a kimenetre szeretnék greppelni. Az egész parancsot két zárójelbe téve lehet a kimenetet továbbküldeni egy programnak (kiírni fájlba stb), jelen esetben a grepnek:

( for i in $(cat /var/log/apache2/access.log | grep valami | awk '{ print $1 }' | sort | uniq); do resolveip $i; done ) | grep "other stuffs"

3 thoughts on “kimenetre greppelés

  1. A zarojelpar subshellben futtatja a ciklust, de pontosan miert van szukseg erre? A \for i in […]; done | grep akarmi\ nem ugyanezt eredmenyezi?

  2. Igazad van, a példát meg lehet oldani zárójel nélkül is. Ha a for ciklus után benne van még pár parancs akkor már nem. pl:

    ( for; parancs2; parancs3 ) | parancs4

Leave a Reply

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.