وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

30 مثال Grep

0 1

سرفصلهای مطلب

زمان لازم برای مطالعه: 20 دقیقه


grep” یک دستور مفید و ضروری لینوکس برای جستجوی یک رشته یا متن خاص در یک فایل است. فرم کامل “grep“فرمان” استچاپ عبارت منظم جهانی” نام این دستور برگرفته از «g/re/p“، که می تواند محتوا را بر اساس جستجو کند روی بیان منظم سه نوع عبارات منظم توسط “پشتیبانی می شوند.grep” فرمان اینها پایه، توسعه یافته و سازگار با پرل هستند. عبارت منظم اصلی به طور پیش فرض در دستور “grep” استفاده می شود. گزینه –E با ” استفاده می شودgrepدستور برای اجرای عبارات منظم توسعه یافته. دو دستور دیگر در خانواده grep وجود دارد. اینها هستند “egrep” و ”fgrep“. “grepدستور ” را می توان به روش های مختلفی برای جستجوی یک رشته یا متن در یک فایل استفاده کرد. برخی از نحو استفاده از “grepدستور در زیر ذکر شده است.

نحو:

به شرح زیر “grepدستور ” برای جستجوی یک رشته یا متن خاص در یک فایل استفاده می شود.

grep نام فایل searching_string

به شرح زیر “grepدستور ” برای جستجوی یک رشته یا متن خاص در چندین فایل استفاده می شود.

grep searching_string نام فایل 1 نام فایل 2 نام فایل 3

به شرح زیر “grepدستور ” برای جستجوی رشته های متعدد با فاصله در یک فایل استفاده می شود.

grep نام فایل ‘searching_string1 searching_string2’

به شرح زیر “grepدستور ” برای جستجوی یک رشته با یک گزینه خاص در یک فایل استفاده می شود. گزینه های مختلف با ” استفاده می شودgrep” دستور برای اهداف مختلف.

grep [-option] نام فایل searching_string

به شرح زیر “grepدستور ” برای جستجوی یک الگوی خاص در یک فایل استفاده می شود.

grep نام فایل الگو

به شرح زیر “grepدستور ” برای جستجوی یک الگوی خاص با گزینه موجود در یک فایل استفاده می شود.

grep [-option] نام فایل الگو

به شرح زیر “grepدستور ” برای جستجوی رشته های متناوب در یک فایل استفاده می شود.

grep ‘searching_string1\|نام فایل searching_string2

به شرح زیر “grepدستور ” برای جستجوی یک الگوی خاص در خروجی ” استفاده می شودps” فرمان

ps | grep -ای الگو

grepدستور ” خطوط منطبق بر فایل را نمایش می دهد روی رشته یا الگوی جستجو به طور پیش فرض. 30 کاربرد مختلف “grepدستور ” در این آموزش با مثال های ساده نشان داده شده است.

محتوا:

  1. جستجوی رشته تطبیق
  2. فقط رشته های غیر منطبق را جستجو کنید
  3. جستجوی رشته با تطابق غیر حساس به حروف بزرگ
  4. فقط کل کلمه را جستجو کنید
  5. چندین فایل را در فهرست فعلی جستجو کنید
  6. جستجوی بازگشتی در دایرکتوری
  7. جستجو بدون استفاده از نام فایل
  8. شماره خط را به خروجی اضافه کنید
  9. استفاده از Wildcard برای مطابقت با یک کاراکتر
  10. استفاده از Wildcard برای تطبیق صفر یا چند بار
  11. استفاده از Wildcard برای تطبیق یک یا چند بار
  12. استفاده از Wildcard برای مطابقت با تعداد دقیق دفعات
  13. تعداد مشخصی از خطوط را بعد از خطوط منطبق چاپ کنید
  14. تعداد مشخصی از خطوط را قبل از خطوط منطبق چاپ کنید
  15. تعداد مشخصی از خطوط بعد و قبل از خطوط منطبق را چاپ کنید
  16. اعداد خاص را با استفاده از براکت سوم مطابقت دهید []
  17. با استفاده از براکت سوم، یک الگو را با کاراکترهای خاص مطابقت دهید []
  18. با استفاده از حروف الفبا و عددی مطابقت دهید [:alnum:] کلاس
  19. با استفاده از کاراکترهای الفبایی مطابقت دهید [:alpha:] کلاس
  20. با استفاده از کاراکترهای عددی مطابقت دهید [:digit:] کلاس
  21. با استفاده از حروف کوچک مطابقت دهید [:lower:] کلاس
  22. با استفاده از کاراکترهای قابل چاپ مطابقت دهید [:print:] کلاس
  23. با استفاده از کاراکتر فضایی مطابقت دهید [:space:] کلاس
  24. مسابقه از ابتدای خط
  25. مطابقت با پایان خط
  26. مطابقت با الحاق
  27. مطابقت با جایگزین
  28. مطابقت با مراجع برگشتی
  29. ترکیب “grep” با “ps” فرمان با استفاده از لوله
  30. ترکیب “grep” با “بیخیال” دستور چاپ فیلدهای خاص

جستجوی رشته تطبیق:

ساده ترین استفاده از “grepدستور عبارت است از جستجوی یک رشته خاص در یک فایل. یک فایل متنی ساده با نام ایجاد کنید customers.txt با محتوای زیر برای بررسی انواع مختلف “grep” دستورات:

customers.txt

شناسه نام ایمیل تلفن
11 دکتر ابیر ابیر@gmail.com +8801813462458
23 ریا چاکروبورتی ریا@gmail.com +8801937864534
45 منهاز علی علی@gmail.com +8801190761212
56 ملیحه چاودری ملیحه@gmail.com +8801820001980
79 معروف سرکار معروف@gmail.com +8801670908966

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” رشته را جستجو می کند ”علی‘ در customers.txt فایل. اگر رشته جستجو در فایل وجود داشته باشد، خط حاوی رشته چاپ خواهد شد:

$ grep علی مشتریان.txt

به شرح زیر “grepدستور “متن را جستجو می کند”ملیحه چاودری‘ در customers.txt فایل. اگر متن جستجو شده در فایل وجود داشته باشد، خط حاوی متن چاپ خواهد شد:

$ grep ‘ملیحه چاودری’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، رشته ‘علی‘ وجود دارد در خط 4و متنملیحه چاودری‘ وجود دارد در خط 5 از customers.txt فایل. بنابراین، خط چهارم فایل برای اولین بار چاپ شده است.grepدستور ” و خط پنجم فایل برای دومین ” چاپ شده است.grep” فرمان

30 مثال Grep

برو به بالا

فقط رشته های غیر منطبق را جستجو کنید:

گزینه -v از “grepدستور ” برای جستجوی رشته های غیر همسان از یک فایل استفاده می شود. در این مثال، «grepدستور ” با گزینه -v برای جستجوی رشته های غیر همسان از customers.txt فایل ایجاد شده در مثال اول

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور با گزینه –v آن خطوط را جستجو می کند customers.txt فایلی که شامل رشته نیست،ابیر‘. خطوط فایلی که شامل رشته نیستابیر‘ چاپ خواهد شد:

$ grep -v مشتریان ابیر.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. پنج خط در وجود دارد customers.txt فایلی که شامل رشته نیستابیر‘، و این خطوط در خروجی چاپ شده است:

30 مثال Grep30 مثال Grep

برو به بالا

جستجوی رشته با تطابق غیر حساس به حروف کوچک و بزرگ:

grepدستور ” به طور پیش فرض رشته را از فایل به روشی حساس به حروف بزرگ و کوچک جستجو می کند. گزینه -i از “grepدستور ” برای جستجوی رشته از یک فایل به روشی غیر حساس به حروف بزرگ و کوچک استفاده می شود. در این مثال، «grepدستور ” با گزینه -i برای جستجوی یک رشته خاص به روشی غیر حساس از حروف بزرگ و کوچک استفاده شده است customers.txt فایلی که قبلا ایجاد شده بود

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور با گزینه –i خطوطی از فایل customers.txt را که حاوی رشته هستند جستجو می کند.منهاز‘. اگر یک یا چند خط در فایل با رشته وجود داشته باشد که در آن حرف می تواند بزرگ یا کوچک باشد، آن خط چاپ می شود:

$ grep -من minhaz customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، خط چهارم فایل متنی حاوی کلمه “منهاز“که با کلمه مطابقت دارد”منهازاگر رشته ها به روشی غیر حساس به حروف بزرگ مقایسه شوند. بنابراین، خط چهارم فایل با برجسته کردن رشته جستجو در خروجی چاپ شده است.

30 مثال Grep30 مثال Grep

برو به بالا

فقط کل کلمه را جستجو کنید:

را -w گزینه “grepدستور ” برای جستجوی کل کلمه از یک فایل به روشی حساس به حروف بزرگ و کوچک استفاده می شود. در این مثال، «grepدستور ” با گزینه -w برای جستجوی یک کلمه کامل از آن استفاده شده است customers.txt فایلی که در مثال اول ایجاد شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” خطوطی از فایل متنی را که حاوی رشته هستند جستجو می کند.مامان‘. اگر هر خطی از فایل حاوی رشته باشد، ‘مامان‘، سپس آن خط چاپ خواهد شد:

$ grep ما مشتریان.txt

به شرح زیر “grepدستور ” خطوطی از فایل متنی را که حاوی کلمه ” هستند جستجو می کند.مامان‘ دقیقا. اگر هر خطی از فایل حاوی کلمه “ماماندقیقاً، سپس آن خط چاپ خواهد شد:

$ grep -w ما مشتریان.txt

به شرح زیر “grepدستور ” خطوطی از فایل متنی را که حاوی کلمه ” هستند جستجو می کند.ملیحه‘ دقیقا. اگر هر خطی از فایل حاوی کلمه “ملیحهدقیقاً، سپس آن خط چاپ خواهد شد:

$ grep -w ملیحه customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. “grepدستور با گزینه –w و کلمه جستجوگرمامان“چیزی برگرداند زیرا فایل متنی حاوی کلمه ای نیست”مامان‘. “grepدستور با گزینه –w و کلمه جستجوگرملیحه‘ خط پنجم فایل حاوی کلمه ” را برگرداند.ملیحه“.

30 مثال Grep30 مثال Grep

برو به بالا

جستجوی چندین فایل در فهرست فعلی:

grepدستور ” برای جستجوی محتوای خاص در یک فایل و جستجوی چندین فایل در دایرکتوری فعلی استفاده می شود روی جستجوی رشته یا الگو روش جستجوی چندین فایل در فهرست فعلی با استفاده از علامت “*” در این مثال برای نشان داده شده است customers.txt فایل.

دستور زیر تمام فایل ها و پوشه های دایرکتوری فعلی را نمایش می دهد:

$ ls

به شرح زیر “grepدستور ” آن فایل های دایرکتوری فعلی را که حاوی کلمه ” هستند جستجو می کند.شکاف‘. لیستی از نام فایل ها با خطوط حاوی کلمه ‘split’ در فهرست فعلی چاپ می شود:

$ grep -w شکاف *

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، چهار فایل در دایرکتوری فعلی حاوی کلمه ‘split’ هستند و اینها هستند تقسیم 1.bash، تقسیم 2.bash، split3.bash، و split4.bash.

30 مثال Grep30 مثال Grep

برو به بالا

جستجوی بازگشتی در دایرکتوری:

گزینه -r با ” استفاده می شودgrepدستور ” برای جستجوی یک رشته یا الگوی خاص به صورت بازگشتی در یک فهرست. استفاده از “grepدستور برای جستجوی بازگشتی در فهرست فعلی در این مثال برای customers.txt فایل.

دستور زیر تمام فایل ها و پوشه های دایرکتوری فعلی را نمایش می دهد:

$ ls

به شرح زیر “grepدستور ” آن دسته از فایل های دایرکتوری فعلی را به صورت بازگشتی جستجو می کند که حاوی کلمه “شکاف‘. فایل‌های دایرکتوری فعلی و زیرمجموعه‌ای که حاوی کلمه ‘split’ هستند با خطوط زیر چاپ می‌شوند:

$ grep -r شکاف *

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، پنج فایل در دایرکتوری فعلی حاوی کلمه “split” هستند. چهار فایل در دایرکتوری فعلی وجود دارد و اینها هستند تقسیم 1.bash، تقسیم 2.bash، split3.bash، و split4.bash. فایل 1 در دایرکتوری فرعی وجود دارد و همینطور است splitstr.c.

پیشنهاد می‌کنیم بخوانید:  Bash Declare –a برای آرایه ها

30 مثال Grep30 مثال Grep

برو به بالا

جستجو بدون استفاده از نام فایل:

را -h یا – بدون نام فایل گزینه با ” استفاده می شودgrepدستور ” برای جستجوی یک رشته یا الگوی خاص بدون استفاده از نام فایل. این گزینه در صورتی مفید است که فقط یک فایل در دایرکتوری فعلی وجود داشته باشد. روش جستجو بدون استفاده از نام فایل توسط “grepدستور ” در این مثال ارائه شده است.

دستور زیر تمام فایل ها و پوشه های دایرکتوری فعلی را نمایش می دهد:

$ ls

دستور زیر محتوای آن را نمایش می دهد products.txt فایل، که تنها فایل دایرکتوری فعلی است و باید قبل از اجرای ” ایجاد شودgrep” دستور:

$ گربه products.txt

به شرح زیر “grepدستور ” آن خطوط را جستجو می کند products.txt فایلی که حاوی کلمه “لپ تاپو آن خطوط را چاپ کنید:

$ grep -h لپ تاپ *

خروجی:

خروجی زیر پس از اجرای دستورات بالا از روی نمایش داده می شود terminal. رشته جستجوگرلپ تاپ‘ در جستجو شده است products.txt فایل. با توجه به خروجی، خط پنجم و ششم فایل products.txt حاوی کلمه “لپ تاپ‘، و این خطوط با برجسته کردن رشته مطابق چاپ شده است:

30 مثال Grep30 مثال Grep

برو به بالا

اضافه کردن شماره خط به خروجی:

را -n گزینه “grepدستور ” برای چاپ خروجی رشته جستجو با شماره خط فایل استفاده می شود. در این مثال، «grepدستور ” با گزینه -n برای نمایش خروجی جستجو با شماره خط استفاده شده است customers.txt فایلی که در مثال اول ایجاد شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” آن خطوط فایل متنی را با شماره خطی که شامل رشته است جستجو و چاپ می کند.+88018‘. خطوط فایل حاوی رشته ‘+88018‘ چاپ خواهد شد:

$ grep -n ‘88018+’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، خط دوم و پنجم از customers.txt فایل حاوی رشته ‘+88018‘. بنابراین، این دو خط با برجسته کردن رشته مطابق با شماره خط چاپ شده است.

30 مثال Grep30 مثال Grep

برو به بالا

استفاده از Wildcard برای مطابقت دادن یک کاراکتر:

“.” کاراکتر wildcard در عبارت منظم برای مطابقت با یک کاراکتر استفاده می شود. هنگامی که همه کاراکترهای کلمه جستجو شده شناخته نشده باشند، می توان از این کاراکتر برای تعریف الگوی “استفاده کرد.grepدستور ” برای جستجوی آن کلمه خاص در فایل. استفاده از این حروف عام برای یک کاراکتر تک منطبق در customers.txt فایل در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” آن خطوط را جستجو و چاپ می کند customers.txt فایلی که حاوی کلمه با پنج کاراکتر است و با ‘ شروع می شودمامان‘. در اینجا، از سه نقطه (.) در الگو برای نشان دادن سه کاراکتر منفرد استفاده شده است:

$ grep -w “مامان…” customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، خط ششم فایل شامل رشته، ‘معروفاین پنج کاراکتر است و با “ما” شروع می شود. بنابراین، خط ششم با برجسته کردن رشته مطابق چاپ شده است. خط پنجم فایل نیز شامل رشته ای است که با ‘Ma’ شروع می شود، اما طول کلمه بیش از پنج کاراکتر است. بنابراین خط پنجم چاپ نشده است.

30 مثال Grep30 مثال Grep

برو به بالا

استفاده از Wildcard برای تطبیق صفر یا چند بار:

کاراکتر علامت * (ستاره) با علامت ” استفاده می شودgrepدستور ” برای مطابقت با رشته یا الگوی صفر یا چند بار. استفاده از این علامت عام برای تطبیق هر رشته برای صفر یا بیشتر در این مثال برای نشان داده شده است customers.txt فایل.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” خطوطی از فایل متنی را که شامل رشته ‘+880′ و هر رشته ای که با ’18’ بعد از آن رشته شروع می شود، جستجو می کند. مسابقه را می توان صفر یا چند بار پیدا کرد. خطوط فایل که با الگو مطابقت دارند،+880*18‘ چاپ خواهد شد:

$ grep ‘+880*18’ customers.txt

به شرح زیر “grepدستور ” خطوطی از فایل متنی را که شامل رشته ‘+880′ و هر رشته ای که با ’15’ بعد از آن رشته شروع می شود، جستجو می کند. مطابقت را می توان صفر یا چند بار مانند قبل پیدا کرد. خطوط فایل که با الگو مطابقت دارند،+880*15‘ چاپ خواهد شد:

$ grep ‘+880*15’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات بالا از روی نمایش داده می شود terminal. با توجه به خروجی، دو خط از فایل با الگو مطابقت دارد، ‘+880*18“از اولین”grepدستور ”، و این خطوط با برجسته کردن عدد مطابق، چاپ شده اند.88018‘. هیچ خطی از فایل با الگو مطابقت ندارد+880*15و خروجی خالی برای دوم ایجاد می شودgrep” دستور:

30 مثال Grep30 مثال Grep

برو به بالا

استفاده از Wildcard برای مطابقت با تعداد دقیق دفعات:

براکت دوم {} با n عدد در الگو استفاده می شود تا رشته خاصی را در یک فایل برای تعداد دقیق دفعات مطابقت دهد. استفاده از براکت دوم {} با یک عدد در یک الگو در این مثال برای نشان داده شده است customers.txt فایل.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” خطوطی از فایل متنی را جستجو می کند که دقیقاً شامل تعداد دو رقم از اعداد 1 تا 5 است. خطوط فایل مطابق با الگو چاپ می شود:

$ grep -ای ‘[1-5]{2} customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. خطوط دوم، سوم و چهارم فایل متنی شامل 11، 13، 24، 23، 45، 34 و 12 است. این خطوط در محدوده 1 تا 5 قرار دارند. این خطوط با برجسته کردن تطابق در خروجی چاپ شده اند. شماره.

30 مثال Grep30 مثال Grep

برو به بالا

چاپ تعداد مشخصی از خطوط بعد از خطوط منطبق:

را یا – پس زمینه با یک مقدار عددی برای چاپ تعداد مشخصی از خطوط پس از رشته یا الگوی مطابق موجود در فایل استفاده می شود. استفاده از گزینه “grepدستور ” در این مثال برای customers.txt فایل.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” خطوط فایل customers.txt را نشان می دهد که شامل رشته است.ریاو دو خط بعدی بعد از خط تطبیق. اگر هیچ خطی از فایل با رشته مطابقت نداشته باشد، خروجی تولید نخواهد شد.ریا‘:

$ grep -من 2 “ریا” customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. رشته ‘ریا‘ در خط سوم فایل وجود دارد. خط چهارم و پنجم دو خط بعدی خط تطبیق هستند. بنابراین، خطوط سوم، چهارم و پنجم با برجسته کردن رشته منطبق در خروجی چاپ شده است.

30 مثال Grep30 مثال Grep

برو به بالا

چاپ تعداد مشخصی از خطوط قبل از خطوط منطبق:

را یا -قبل از زمینه با یک مقدار عددی برای چاپ تعداد مشخصی از خطوط قبل از رشته یا الگوی مطابق موجود در فایل استفاده می شود. استفاده از را گزینه “grepدستور ” در این مثال برای customers.txt فایل.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” خطی را که شامل رشته است نمایش می دهدریاو یک خط قبل از خط تطبیق. اگر هیچ خطی از فایل با رشته مطابقت نداشته باشد، خروجی تولید نخواهد شد.ریا‘:

$ grep -من 1 “ریا” customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. رشته «ریا» در خط سوم فایل وجود دارد. خط دوم خط قبلی خط تطبیق است. بنابراین، خط دوم و سوم با برجسته کردن رشته مطابق در خروجی چاپ شده است.

30 مثال Grep30 مثال Grep

برو به بالا

چاپ تعداد مشخصی از خطوط بعد و قبل از خطوط منطبق:

را -C گزینه ای با مقدار عددی برای چاپ تعداد مشخصی از خطوط قبل و بعد از رشته یا الگوی مطابق موجود در فایل استفاده می شود. استفاده از -C گزینه “grepدستور، در این مثال برای customers.txt فایل.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” خطی را که شامل رشته است نمایش می دهدملیحه‘، یک خط قبل از خط تطبیق و یک خط بعد از خط تطبیق. اگر هیچ خطی از فایل با رشته مطابقت نداشته باشد، خروجی تولید نخواهد شد.ملیحه‘.

$ grep -من -C 1 ‘ملیحه’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. خط پنجم شامل رشته، ‘ملیحه‘. خط چهارم خط قبلی خط تطبیق است و خط ششم خط زیر خط تطبیق است. بنابراین، خطوط چهارم، پنجم و ششم با برجسته کردن رشته منطبق در خروجی چاپ شده است.

30 مثال Grep30 مثال Grep

برو به بالا

اعداد خاص را با استفاده از براکت سوم مطابقت دهید []:

محدوده ارقام خاص را می توان در الگوی عبارت منظم از ” تعریف کرد.grep” با استفاده از براکت سوم فرمان دهید []. روش جستجوی ارقام خاص با استفاده از “grepدستور در customers.txt فایل در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” خطوط فایل متنی حاوی ارقام محدوده 3 تا 5 را جستجو می کند. خطوط فایل مطابق با الگو چاپ می شود:

$ grep ‘[3-5]’ customers.txt

به شرح زیر “grepدستور ” خطوطی از فایل متنی را که شامل دو رقم از محدوده 3 تا 5 هستند جستجو می کند. خطوط فایل مطابق با الگو چاپ می شود:

$ grep -ای ‘[3-5]{2} customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. اولین “grepدستور ” با خطوط دوم، سوم، چهارم و پنجم فایل متنی برای ارقام 3، 4 و 5 مشخص شده در خروجی مطابقت دارد. دومین “grepدستور ” با خطوط دوم، سوم و چهارم فایل متنی برای اعداد دو رقمی حاوی 3، 4 و 5 که در خروجی هایلایت شده اند مطابقت دارد.

30 مثال Grep30 مثال Grep

برو به بالا

با استفاده از براکت سوم، یک الگو را با کاراکترهای خاص مطابقت دهید []:

کاراکترهای خاص یک فایل می توانند با استفاده از براکت سوم به روش های مختلفی مطابقت داشته باشند. محدوده کاراکترها یا کاراکترهای خاص را می توان در الگوی عبارت منظم با استفاده از براکت سوم برای جستجوی خطوط خاصی از فایل استفاده کرد. روش جستجوی کاراکترهای خاص در فایل customers.txt با استفاده از الگوی محدوده کاراکترها یا کاراکترهای خاص در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” خطوطی را که شامل رشته ای هستند که با ‘Ma’ شروع می شود و هر کاراکتر از محدوده a تا r را جستجو می کند. خطوط فایل مطابق با این الگو چاپ می شود:

$ grep مامان[a-r]’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به عبارت منظم استفاده شده در “grepدستور ” خط پنجم و ششم فایل متنی مطابقت دارند و این خطوط در خروجی چاپ شده است. این خطوط شامل رشته، ‘مامان‘، و کاراکتر بعدی این رشته ‘ل“و”r‘، که در محدوده هستند [a-r].

30 مثال Grep30 مثال Grep

برو به بالا

به شرح زیر “grepدستور ” خطوطی از فایل متنی را که حاوی کاراکتر هستند جستجو می کندآر‘ یا ‘r‘. خطوط فایل مطابق با این الگو چاپ می شود:

$ grep ‘[Rr]’ customers.txt

به شرح زیر “grepدستور ” خطوطی از فایل متنی را که حاوی رشته ها هستند جستجو می کند.AR‘ یا ‘آر‘ یا ‘aR‘ یا ‘ar‘. خطوط فایل مطابق با این الگو چاپ می شود:

$ grep ‘[Aa][Rr]’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. الگوی اولین ”grepدستور ” با خطوط دوم، سوم، پنجم و ششم فایل متنی مطابقت داشته و آن خطوط در خروجی چاپ شده است. الگوی دومgrepدستور ” با خط ششم فایل متنی مطابقت دارد و آن خط در خروجی چاپ شده است.

پیشنهاد می‌کنیم بخوانید:  دستور Long Bash را به چند خط در یک اسکریپت تقسیم کنید

30 مثال Grep30 مثال Grep

برو به بالا

با استفاده از حروف الفبا و عددی مطابقت دهید [:alnum:] کلاس:

را [:alnum:] class در الگوی عبارت منظم برای مطابقت با کاراکترهای الفبایی و عددی استفاده می شود. معادل الگو است، [A-z0-9]. روش استفاده از این کلاس به عنوان الگوی “grep” دستور جستجوی تمام کاراکترهای الفبایی و عددی customers.txt فایل در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” هر حروف و تعداد سه کاراکتر را در فایل customers.txt جستجو می کند. خطوط فایل مطابق با الگو چاپ می شود:

$ grep -ای ‘[[:alnum:]]{3}’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به محتوای فایل، تمام خطوط شامل الفبا یا تعداد سه کاراکتر است. حروف و اعداد منطبق در خروجی با حذف کاراکترهای خاص، حروف الفبای غیر منطبق و نویسه های عددی برجسته می شوند.

30 مثال Grep30 مثال Grep

برو به بالا

با استفاده از کاراکترهای الفبایی مطابقت دهید [:alpha:] کلاس:

را [:alpha:] class در الگوی عبارت منظم استفاده می شود تا فقط با کاراکترهای الفبایی مطابقت داشته باشد. معادل الگو است، [A-z]. روش استفاده از این کلاس به عنوان الگوی “grep” دستور جستجوی تمام حروف الفبای customers.txt فایل در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” هر کاراکتر الفبای پنج کاراکتری را در فایل customers.txt جستجو می کند. خطوط فایل مطابق با الگو چاپ می شود:

$ grep -ای ‘[[:alpha:]]{5}’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به محتوای فایل، تمام خطوطی که شامل حروف الفبای پنج کاراکتر و الفبای منطبق هستند در خروجی با حذف ارقام، کاراکترهای غیر منطبق و کاراکترهای خاص برجسته می شوند.

30 مثال Grep30 مثال Grep

برو به بالا

با استفاده از کاراکترهای عددی مطابقت دهید [:digit:] کلاس:

را [:digit:] کلاس در الگوی عبارت منظم استفاده می شود تا فقط با کاراکترهای عددی مطابقت داشته باشد. معادل الگو است [0-9]. روش استفاده از این کلاس به عنوان الگوی “grepفرمان ” برای جستجوی تمام کاراکترهای عددی customers.txt فایل در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” تمام کاراکترهای عددی موجود در فایل customers.txt را جستجو می کند. خطوط فایل مطابق با الگو چاپ می شود:

$ grep -ای ‘[[:digit:]]’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. در محتوای فایل، تمام خطوط حاوی ارقام و ارقام مطابق با حذف تمام حروف الفبا و کاراکترهای خاص در خروجی برجسته می شوند.

30 مثال Grep30 مثال Grep

برو به بالا

با استفاده از حروف کوچک مطابقت دهید [:lower:] کلاس:

را [:lower:] class در الگوی عبارت منظم برای مطابقت با تمام کاراکترهای کوچک استفاده می شود. معادل الگو است، [a-z]. روش استفاده از این کلاس به عنوان الگوی “grepدستور ” برای جستجوی تمام کاراکترهای کوچک customers.txt فایل در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” تمام کاراکترهای کوچک در فایل customers.txt را جستجو می کند. خطوط فایل مطابق با الگو چاپ می شود:

$ grep -ای ‘[[:lower:]]’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به محتوای فایل، تمام خطوط دارای حروف کوچک هستند. بنابراین، تمام خطوط فایل چاپ شده است و کاراکترهای کوچک مطابق با حذف ارقام، حروف بزرگ و کاراکترهای خاص در خروجی هایلایت می شوند.

30 مثال Grep30 مثال Grep

برو به بالا

با استفاده از کاراکترهای قابل چاپ مطابقت دهید [:print:] کلاس:

را [:print:] class در الگوی عبارت منظم برای مطابقت با کاراکترهای قابل چاپ استفاده می شود. روش استفاده از این کلاس به عنوان الگوی “grepدستور ” برای جستجوی تمام کاراکترهای قابل چاپ customers.txt فایل در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” تمام کاراکترهای قابل چاپ را در فایل customers.txt جستجو می کند. خطوط فایلی که با الگو مطابقت دارد چاپ می شود:

$ grep -ای ‘[[:print:]]’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، تمام کاراکترهای فایل customers.txt کاراکترهای قابل چاپ هستند. بنابراین، تمام خطوط فایل چاپ شده است و همه کاراکترها در خروجی هایلایت شده اند.

30 مثال Grep30 مثال Grep

برو به بالا

با استفاده از کاراکتر فضایی مطابقت دهید [:space:] کلاس:

را [:space:] class در الگوی عبارت منظم برای مطابقت با خطوطی که حاوی کاراکترهای فاصله هستند استفاده می شود. این کلاس را می توان در الگوی ” استفاده کردgrepدستور ” برای جستجوی خطوط فایل حاوی کاراکترهای فاصله. یک فایل متنی با نام demo.txt با محتوای زیر ایجاد کنید تا استفاده از آن را بررسی کنید [:space:] کلاس در اینجا، خط دوم فایل حاوی کاراکترهای فاصله است:

demo.txt

WelcomeToLinuxHint
به LinuxHint خوش آمدید

دستور زیر محتوای آن را نمایش می دهد demo.txt فایل:

$ گربه demo.txt

به شرح زیر “grepدستور ” آن خطوط را جستجو می کند دمو.txt فایل حاوی فضا خطوط فایل حاوی فاصله چاپ می شود:

$ grep -ای ‘[[:space:]]’ demo.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. فقط یک خط از فایل متنی حاوی فضایی است که در خروجی چاپ شده است. خط اول فایل چاپ نشده است زیرا فضایی در خط وجود ندارد. خط دوم فایل به دلیل وجود دو فاصله در خط چاپ می شود.

30 مثال Grep30 مثال Grep

برو به بالا

مسابقه از ابتدای خط:

نماد caret (^) در عبارت منظم برای مطابقت با خط شروع شده با کاراکتر یا رشته خاص در یک فایل استفاده می شود. استفاده از این نماد در این مثال برای فایل customers.txt که قبلا ایجاد شده بود ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” خطوطی از فایل customers.txt را که با عدد 4 شروع می شود جستجو می کند. خطوط فایل مطابق با الگو چاپ می شود:

$ grep ‘^4’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، فقط یک خط در فایل customers.txt وجود دارد که با ‘ شروع می شود.4‘. خط چهارم فایل است که در خروجی چاپ شده است.

30 مثال Grep30 مثال Grep

برو به بالا

مسابقه تا پایان خط:

نماد دلار ($) در عبارت منظم برای تطبیق انتهای خط با کاراکتر یا رشته خاص در یک فایل استفاده می شود. استفاده از این نماد در این مثال برای فایل customers.txt که قبلا ایجاد شده بود ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” آن خطوط را جستجو می کند customers.txt فایلی که با رشته ختم می شود،1212‘. خطوط فایل مطابق با الگو چاپ می شود:

$ grep ‘1212$’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، تنها یک خط در فایل customers.txt وجود دارد که با ‘ ختم می شود.1212‘. خط چهارم فایل است که در خروجی چاپ شده است.

30 مثال Grep30 مثال Grep

برو به بالا

مطابقت با الحاق:

الگوی بیان منظم را می توان با الحاق چندین الگو ایجاد کرد. نقطه (.) برای به هم پیوستن الگوها استفاده می شود. استفاده از الحاق با “grepدستور ” در این مثال برای customers.txt فایل.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” آن خطوط را جستجو می کند customers.txt فایلی که حاوی کلمه ای است که با ‘ شروع می شودم‘ یا ‘آر“و با” ختم می شودک‘ یا ‘ک‘. خطوط فایل مطابق با الگو چاپ می شود:

$ grep -e ‘[MR].*[Kk]’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، دو خط در وجود دارد customers.txt فایلی که با ‘ شروع می شودآر“و”م‘، و با ‘ ختم شودک‘. بنابراین خط سوم و ششم فایل در خروجی چاپ شده است.

30 مثال Grep30 مثال Grep

برو به بالا

مطابقت با جایگزین:

grepدستور ” از چندین الگو پشتیبانی می کند. عملیات تناوب یا OR (|) در الگوی ” استفاده می شود.grepدستور برای تعریف الگوهای متعدد. مطابقت های ممکن مختلف را می توان با استفاده از تناوب که مانند عملگر منطقی OR کار می کند در الگو تعریف کرد. استفاده از تناوب در “grepالگوی جستجوی رشته مشخص شده در فایل customers.txt در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

به شرح زیر “grepدستور ” رشته را جستجو می کند ”ریا‘ یا ‘منهازدر فایل customers.txt. در اینجا، بک اسلش(\) با لوله (|) برای انجام وظیفه یک متناوب استفاده شده است. خطوط فایل مطابق با الگو چاپ می شود:

$ grep “ریا\|منهاز” customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. رشته،’ریا“در خط سوم فایل وجود دارد و رشته، “منهاز‘ در خط چهارم فایل وجود دارد. این خطوط در خروجی چاپ شده است.

30 مثال Grep30 مثال Grep

برو به بالا

مطابقت با مراجع برگشتی:

راه به خاطر سپردن تطابق قبلی هر الگوی به عقب ارجاع نامیده می شود. “grepدستور ” از ویژگی های مراجع پشتیبان پشتیبانی می کند. می توان آن را با محصور کردن بخشی از الگو با استفاده از پرانتز و استفاده از \1 برای مرجع اول، \2 برای مرجع دوم و غیره ایجاد کرد. روی. استفاده از مرجع برگشتی در “grepدستور ” در این مثال برای فایل customers.txt ارائه شده است.

دستور زیر محتوای فایل customers.txt را نمایش می دهد:

$ گربه customers.txt

به شرح زیر “grepدستور ” هر رقمی از محدوده 0 تا 5 را در فایل customers.txt جستجو می کند. اگر مطابقت پیدا شود، مرجع را حفظ می کند و از مرجع پشتیبان برای مطابقت با قسمت باقیمانده فایل استفاده می کند. خط منطبق چاپ خواهد شد:

$ grep ‘\([0-5]\)\1’ customers.txt

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، خط دوم فایل با ارقام مطابقت دارد، 11 به عنوان یک مرجع استفاده می شود. خط چهارم و پنجم فایل بر اساس مطابقت دارد روی مرجع برگشتی

30 مثال Grep30 مثال Grep

برو به بالا

ترکیب “grep” با دستور “ps” با استفاده از یک لوله:

چندین فرآیند را می توان به طور همزمان در سیستم عامل لینوکس اجرا کرد. فرم کامل “ps“فرمان است”process وضعیت‘. وظیفه اصلی این دستور بررسی وضعیت تمامی فرآیندهای در حال اجرا و نمایش اطلاعات مختلف در مورد فرآیندها می باشد. این دستور برای کارهای اداری بسیار مفید است. روش استفاده از “grep” فرمان روی خروجی “psدستور ” در این مثال نشان داده شده است.

دستور زیر اطلاعات تمامی فرآیندهای در حال اجرا را نمایش می دهد:

$ ps

دستور زیر خطوطی را که با ‘ ختم می شوند جستجو می کند.bash” در خروجی “ps” فرمان اگر محتوای هر خط از “psخروجی با الگوی استفاده شده درgrepدستور “، سپس آن خط چاپ می شود:

$ ps | grep -ای ‘bash$’

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. با توجه به خروجی، خط دوم خروجی “psدستور ” مطابق با الگوی ”grep” دستور داده شد و چاپ شد.

30 مثال Grep30 مثال Grep

برو به بالا

برای چاپ فیلدهای خاص، “grep” را با دستور “awk” ترکیب کنید:

بیخیالدستور ” راه دیگری برای جستجوی محتوا در یک فایل است روی هر الگوی کارهای مختلف را می توان با استفاده از “بیخیالدستور ” زمانی که الگو با هر متن یا خط فایل مطابقت دارد، مانند الگوی تطبیق، خروجی قالب بندی، عملیات رشته و غیره. روش فرمت کردن خروجیgrepدستور ” با استفاده از ”بیخیالدستور ” در این مثال ارائه شده است.

دستور زیر محتوای آن را نمایش می دهد customers.txt فایل:

$ گربه customers.txt

دستور زیر رشته را جستجو می کند،ابیردر فایل customers.txt و خروجی را به «بیخیالدستور ” که خروجی فرمت شده را از خط منطبق چاپ می کند:

$ grep ‘ابیر’ customers.txt | بیخیال -اف ‘\t’ ‘{ print “آدرس ایمیل “$2” “$4} است”

خروجی:

خروجی زیر پس از اجرای دستورات قبلی ظاهر می شود terminal. کلمه ‘ابیردر خط دوم وجود دارد customers.txt فایل. بنابراین، مقدار ستون دوم و چهارم آن خط با ‘\ از هم جدا می شود.تی“، و با استفاده از “” با رشته های دیگر چاپ شده است.بیخیال” فرمان

30 مثال Grep30 مثال Grep

برو به بالا

نتیجه:

محتوای یک فایل یا چندین فایل را می توان به روش های مختلف در لینوکس با استفاده از ” جستجو کرد.grep” فرمان مدیر سیستم از این دستور برای انجام انواع مختلف وظایف اداری استفاده می کند. گزینه های زیادی برای انجام جستجو در یک فایل یا دایرکتوری به روش های مختلف دارد. متداول ترین الگوهای بیان منظم اولیه و توسعه یافته برای جستجوی محتوا در یک فایل در این آموزش مورد بحث قرار گرفته است. امیدوارم با تمرین 30 مثال grep نشان داده شده در اینجا و استفاده صحیح از این دستور، اهداف استفاده از این دستور برای کاربران لینوکس پاک شود.

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1402-12-30 12:37:05

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید