نفی
اگر اولین کاراکتر در یک عبارت براکت یک caret باشد (^) کاراکترهای باقیمانده به عنوان مجموعه ای از کاراکترها در نظر گرفته می شوند که نباید در موقعیت کاراکتر معین وجود داشته باشند. ما این کار را با اصلاح مثال قبلی خود انجام می دهیم:
[me@linuxbox ~]$ grep -h '[^bg]zip' dirlist*.txt
bunzip2
[me@linuxbox ~]$ grep -h '[^bg]zip' dirlist*.txt
bunzip2
گانزیپ funzip gpg-zip preunzip prezip
prezip-bin unzip unzipsfx
گانزیپ funzip gpg-zip preunzip prezip
prezip-bin unzip unzipsfx
با فعال شدن نفی، لیستی از فایلها را دریافت میکنیم که حاوی رشته «زیپ» هستند که قبل از هر کاراکتری به جز «b» یا «g» وجود دارد. توجه کنید که فایل زیپ پیدا نشد مجموعه کاراکترهای نفی هنوز به یک کاراکتر در موقعیت داده شده نیاز دارد، اما کاراکتر نباید عضوی از مجموعه نفی شده باشد.
کاراکتر caret فقط در صورتی نفی را احضار می کند که اولین کاراکتر درون یک عبارت کروشه باشد. در غیر این صورت معنای خاص خود را از دست می دهد و به یک شخصیت معمولی در مجموعه تبدیل می شود.