با استفاده از دستور grep و پارامتر های زیر می توان این کار را انجام داد:
grep -rnw '/path/to/somewhere/' -e "pattern"
-
پارامتر -r یا -R مشخص کننده جستجو در فولدر بصورت بازگشتی است.
-
پارامتر -n مشخص کننده شماره خط است.
-
پارامتر -w مشخص می کند که باید تمام کلمه جستجو شود.
-
پارامتر -l مشخص می کند که در خروجی فقط نام فایل حاوی متن چاپ شود.
با استفاده از پارامتر های --exclude یا --include می توان جستجو را محدود کرد:
grep --include=\*.{c,h} -rnw '/path/to/somewhere/' -e "pattern"
دستور بالا فقط در بین فایل های با پسوند .c یا .h جستجو می کند. یا:
grep --exclude=*.o -rnw '/path/to/somewhere/' -e "pattern"
دستور بالا فقط در بین فایل هایی جستجو می کند که پسوندشان .o نباشد.
با استفاده از پارامتر های --exclude-dir و --include-dir می توان جستجو را در بین فولدر های خاصی محدود کرد:
grep --exclude-dir={dir1,dir2,*.dst} -rnw '/path/to/somewhere/' -e "pattern"