2010-12-10 2 views

Antwort

4

Ich bin sicher, es gibt einen Weg, um alles zusammen zu tun, aber der einfachste Weg ist nur mehrere grep Kettenbefehle zusammen

cat <myfile> | grep "string 1" | grep -v "errno:1" 

Die -v Option, um die Suche invertiert, so dass wird die Linien angezeigt werden, dass haben "string 1" ohne "errno: 1"

+3

UUOC aka nutzlos Verwendung der Katze. Beginnen Sie einfach mit 'grep" string1 "' – SiegeX

3

Sie suchen eine "string 1", die nicht von folgt "errno: 1":

grep -P 'string 1(?!.*errno:1)' inputfile 
+1

+1, Ist die Unterstützung für '-P' üblich? – codaddict

+1

@codeaddict: Wahrscheinlich nicht. Ich hätte erwähnen sollen, dass es GNU 'Grep' ist. –

+1

Es ist auch in OS X 'Grep' verfügbar. –