Grep'iniz -P veya --perl-regexp'i desteklemiyorsa ve PCRE'nin etkin olduğu grep'i yükleyebilirsiniz, örneğin "pcregrep", Perl uyumlu normali kabul etmek için GNU grep gibi komut satırı seçeneklerine ihtiyaç duymayacaktır. ifadeler, sadece koşuyorsun
pcregrep "Ui\.(?!Line)"
Örneğin "Ui. (?! (Çizgi))" örneğinizdeki gibi "Çizgi" için başka bir iç içe gruba ihtiyacınız yoktur - yukarıda gösterdiğim gibi dış grup yeterlidir.
Negatif iddialara bakmanın başka bir örneğini vereyim: "ipset" ile döndürülen satırların listesine sahip olduğunuzda, her satır satırın ortasındaki paket sayısını gösterir ve sıfır paketli satırlara ihtiyacınız yoksa, yalnızca Çalıştırmak:
ipset list | pcregrep "packets(?! 0 )"
Perl uyumlu normal ifadeleri seviyorsanız ve perl'e sahipseniz ancak pcregrep'e sahip değilseniz veya grep'iniz --perl-regexp'i desteklemiyorsa, grep gibi aynı şekilde çalışan tek satırlık perl komut dosyalarını kullanabilirsiniz:
perl -e "while (<>) {if (/Ui\.(?!Lines)/){print;};}"
Perl, stdin'i grep gibi aynı şekilde kabul eder, ör.
ipset list | perl -e "while (<>) {if (/packets(?! 0 )/){print;};}"