Read 6min Published به شما اجازه می دهد تا فایلی را در داخل یک فرمان قدرتمند از UN جستجو کنید. پارامترهای مختلف.
این به ویژه هنگام عیب یابی یا اشکال زدایی مفید است.
دستور grep تعداد زیادی گزینه و کاربرد دارد.
به احتمال زیاد، شما هرگز به همه آنها نیاز نخواهید داشت یا از آنها استفاده نمی کنید. ، در نهایت در بیشتر مواقع از چند دستور grep استفاده خواهید کرد.
این مقاله رایج ترین دستورات grep را با مثال های کوتاه فهرست می کند.
اگر از قبل با دستور grep آشنایی دارید، اما فراموش می کنید کدام گزینه مفید است. چه کاری انجام می دهد.
| گزینه | مثال فرمان | توضیح | |
|---|---|---|---|
| i | پرونده الگوی grep -i | جستجو به حروف بزرگ و کوچک غیرحساس | |
| فایل غیرحساس به حروف بزرگ و کوچک | 69A[19018] نمایش n خط بعد از | ||
| B | grep- فایل الگوی B n | نمایش n خط قبل از | |
| C | grep -C n فایل الگو | نمایش n خط قبل و بعد | |
| v[19659016[19]65 خط الگوی grep-v که مطابقت ندارند | |||
| c | پرونده الگوی grep -c | تعداد خطوط منطبق را شمارش کنید | |
| l | پرونده الگوی grep -l | نمایش فقط نامهای فایل[69]1965[19] فایل الگوی grep -w | تطابق دقیق کلمه |
| e | پرونده regex grep -e | تطبیق الگوی منظم | |
| a | grep -a فایلهای الگوی باینری[196]1965 ] r | grep -r pattern dir | جستجوی بازگشتی دایرکتوری |
Grep Quick Examples
احتمالاً از قبل می دانید که برای جستجوی متن یا الگوی خاص در یک فایل، باید از دستور grep استفاده کنید. این:
grep search_pattern نام فایل
بیایید به چند کاربرد رایج دستور g نگاهی بیندازیم. rep.
جستجوی غیر حساس به حروف کوچک
به طور پیشفرض جستجوهای grep به حروف بزرگ و کوچک حساس هستند.
شما میتوانید مطابقت حروف بزرگ با گزینه -i را نادیده بگیرید:
grep -i holmes filename[19659051Tکهباهولمزوهلمزمطابقتدارندنمایش خطوط قبل و بعد از مسابقات
به طور پیشفرض، فقط خطوط منطبق را میبینید.
اما وقتی در حال عیبیابی هستید، دیدن چندین خط قبل و/یا بعد از مطابقت مفید است. خطوط.
شما می توانید از گزینه -A برای نشان دادن خطوط پس از خطوط منطبق استفاده کنید.
به یاد داشته باشید، A "After" (بعد) است.
دستور نشان داده شده در زیر خطوط منطبق را نشان می دهد. و همچنین 5 خط بعد از مسابقه.
grep -A 5 search_pattern نام فایلبه طور مشابه، می توانید از گزینه -B برای نمایش خطوط قبل از مسابقه استفاده کنید. » (قبل از).
تیم، نمایش تصویر زیر 5 خط را قبل از خطوط منطبق به همراه خط(های) منطبق نشان می دهد.
grep -B 5 search_pattern filenameمن گزینه -C را به بهترین نحو دوست دارم زیرا خطوط قبل را نشان می دهد و پس از موارد تطبیق.[19659006] به یاد داشته باشید که C در اینجا به معنای دایره است.
دستور زیر 5 خط قبل از خط منطبق، خط منطبق و 5 خط بعد از خط منطبق را نشان می دهد.[196590] ]grep -C 5 search_pattern نام فایل
نمایش خطوطی که مطابقت ندارند
شما می توانید از grep برای نمایش تمام خطوطی که با الگوی داده شده مطابقت ندارند استفاده کنید.
این «تطابق معکوس» با گزینه -v استفاده می شود. :
grep -v search_pattern نام فایلشما می توانید گزینه های -i و -v را ترکیب کنید. یک الگو با گزینه -c.
این با حرف کوچک c.
grep -c search_pattern نام فایلمیتوانید گزینههای -c و -v را ترکیب کنید تا تعداد خطوطی را که با الگوی داده شده مطابقت ندارند به دست آورید.
البته، میتوانید از – استفاده کنید. گزینه i، که به حروف بزرگ و کوچک حساس نیست.
نمایش اعداد خطوط منطبق
برای نمایش شماره خطوط منطبق، میتوانید از گزینه -n استفاده کنید.
grep -n search_pattern نام فایلهمین کار را میتوان انجام داد. با جستجوی معکوس، چندین فایل
میتوانید چندین فایل grep را برای جستجو در اختیارتان قرار دهید.
grep search_pattern file1 file2این ممکن است کارساز باشد، اما یک مثال کاربردیتر میتواند جستجو در فایلهایی از یک نوع خاص باشد.
. ]به عنوان مثال، اگر می خواهید یک رشته را فقط در اسکریپت های پوسته (فایل هایی که با .sh ختم می شوند) جستجو کنید، می توانید از: با استفاده از گزینه grep -r.
این الگوی داده شده را در همه فایلهای دایرکتوری فعلی و زیرشاخههای آن جستجو میکند. همه خطوط منطبق
اگر روی چندین فایل جستجو می کنید و می خواهید فقط فایل هایی را ببینید که دارای یک رشته هستند، می توانید از گزینه -l استفاده کنید. "راهنما"، می توانید از: اگر به دنبال کلمه هستید، می توانید استفاده کنید: "انجام شد"، همچنین خطوط حاوی کلمات "انجام کننده" یا "ترک شده" را نشان می دهد. 19659051]بنابراین، با جستجوی کلمه "انجام شد" فقط رشته های حاوی "انجام شد" و نه "انجام شده" یا "ترک" را نشان می دهد. گزینه ویژه -e برای استفاده از الگوهای regex و گزینه -E برای استفاده از الگوهای regex توسعه یافته.
اگر اگر میخواهید خطوط حاوی یک الگوی خاص را ببینید، میتوانید از عملگر | استفاده کنید.
اما، این کاراکتر خاص باید به صورت زیر حذف شود. می توان از الگوها استفاده کرد.
گزینه خاصی برای عملگر AND وجود ندارد.
Grep را می توان چندین بار برای این کار با تغییر مسیر لوله استفاده کرد. با فایلهای باینری مطابقت دارد.
میتوانید با استفاده از گزینه -a، آن را مجبور کنید مانند فایلهای متنی اجرا شود. برای grep که دوست دارید در این صفحه ببینید.
مراجعه کنید همچنین ببینید: