مثال های دستور grep Linux

Pin
Send
Share
Send

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

با استفاده از دستور grep در لینوکس

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

همچنین ببینید: به دنبال فایل در لینوکس هستید

کار مقدماتی

تمام اقدامات بیشتر از طریق کنسول استاندارد انجام می شود ، همچنین به شما امکان می دهد پرونده ها را فقط با مشخص کردن مسیر کامل برای آنها باز کنید ، یا اگر "ترمینال" از دایرکتوری لازم راه اندازی شد. می توانید پوشه اصلی یک فایل را پیدا کنید و مانند آن به کنسول بروید:

  1. مدیر فایل را اجرا کنید و به پوشه مورد نظر بروید.
  2. بر روی فایل مورد نظر کلیک راست کرده و را انتخاب کنید "خواص".
  3. در برگه "پایه" خط را بخوانید "پوشه والدین".
  4. حالا اجرا کن "ترمینال" روش راحت ، به عنوان مثال ، از طریق منو یا با فشار دادن ترکیب کلید Ctrl + Alt + T.
  5. در اینجا ، از طریق دستور به دایرکتوری برویدcd / home / user / پوشهکجا کاربر - نام کاربری ، و پوشه - نام پوشه.

تیم را درگیر کنیدنام گربه + نام پروندهاگر می خواهید محتوای کامل را مشاهده کنید برای راهنمایی های دقیق در مورد کار با این تیم ، مقاله دیگر ما را در لینک زیر مشاهده کنید.

بیشتر بخوانید: مثالهای دستورات گربه در لینوکس

با انجام موارد فوق می توانید از آنها استفاده کنید سلامبدون قرار دادن مسیر کامل پرونده ، در فهرست لازم قرار دارید.

جستجوی محتوای استاندارد

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

  1. در قسمت فرمان ، وارد کنیدgrep کلمه testfileکجا کلمه - اطلاعات جستجو شده ، و امتحان - نام پرونده هنگام جستجوی خارج از پوشه ، مسیر کامل را به عنوان نمونه مشخص کنید/ home / user / پوشه / نام پرونده. پس از وارد کردن فرمان ، کلید را فشار دهید وارد شوید.
  2. باقی مانده است که خود را با گزینه های موجود آشنا کنید. خطوط کامل روی صفحه نمایش داده می شود و مقادیر اصلی با رنگ قرمز برجسته می شوند.
  3. مهم است که به این موارد نیز حساس باشیم ، زیرا رمزگذاری لینوکس برای جستجوها بدون کاراکترهای بزرگ یا کوچک بهینه نمی شود. اگر می خواهید تعریف یک رجیستر را دور بزنید ، وارد کنیدgrep -i "word" testfile.
  4. همانطور که مشاهده می کنید ، در تصویر بعدی ، نتیجه تغییر کرده و خط جدید دیگری اضافه شده است.

جستجوی ضبط رشته

بعضی اوقات کاربران نیاز دارند که نه تنها مطابقت دقیق روی خطوط را پیدا کنند بلکه اطلاعاتی را که بعد از آنها حاصل می شود ، پیدا کنند ، به عنوان مثال ، هنگام گزارش یک خطای خاص. سپس تصمیم صحیح اعمال صفات خواهد بود. کنسول را تایپ کنیدgrep -A3 "کلمه" testfileبرای در نتیجه و سه خط بعدی بعد از مسابقه درج کنید. می توانید بنویسید-A4، پس از آن چهار خط ضبط خواهد شد ، هیچ محدودیتی وجود ندارد.

اگر در عوض-Aشما استدلال را اعمال می کنید-B + تعداد ردیفدر نتیجه داده های واقع شده قبل از ورود به محل نمایش داده می شوند.

استدلال-Cبه نوبه خود ، خطوط اطراف کلمه کلیدی را ضبط می کند.

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

grep-B3 "کلمه" testfile
grep-C3 "کلمه" testfile

جستجو در کلمات کلیدی در آغاز و انتهای خطوط

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

جستجوی محتوا در انتهای سطرها تقریباً با همان اصل دنبال می شود ، فقط باید در یک علامت نقل قول یک کاراکتر اضافه کنید $، و دستور به این صورت خواهد بود:grep "word $" testfile.

جستجوی شماره

هنگام جستجوی مقادیر مورد نظر ، کاربر همیشه اطلاعاتی در مورد کلمه دقیق موجود در خط ندارد. سپس روش جستجو را می توان از طریق اعداد انجام داد ، که بعضی اوقات کار را بسیار ساده می کند. فقط استفاده از تیم مورد نظر در فرم لازم استgrep "[0-7]" testfileکجا «[0-7]» - دامنه مقادیر ، و امتحان - نام پرونده برای اسکن.

تجزیه و تحلیل همه پرونده های دایرکتوری

اسکن کلیه اشیاء واقع در یک پوشه بازگشتی نامیده می شود. کاربر باید فقط یک آرگومان را اعمال کند ، که تمام فایلهای موجود در فولدر را تجزیه و تحلیل کرده و خطوط مناسب و مکان آنها را نشان می دهد. باید وارد شویدgrep -r "word" / home / user / پوشهکجا / home / user / پوشه - مسیر به فهرست برای اسکن.

محل ذخیره فایل به رنگ آبی نمایش داده می شود ، و اگر می خواهید بدون این اطلاعات خط دریافت کنید ، آرگومان دیگری را اختصاص دهید تا فرمان به این صورت باشدgrep -h -r "word" + مسیر پوشه.

جستجوی دقیق کلمه

در ابتدای مقاله ، ما قبلاً در مورد جستجوی کلمات معمول صحبت کردیم. با این حال ، با این روش ، ترکیب های اضافی در نتایج نمایش داده می شوند. مثلاً کلمه را پیدا می کنید کاربراما دستور کاربر را نمایش می دهد123, رمز عبوردر صورت وجود موارد کاربر و سایر مسابقات. برای جلوگیری از این نتیجه ، استدلال را اختصاص دهید(grep -w "word" + نام پرونده یا محل سکونت).

این گزینه همچنین در صورت نیاز به جستجوی چندین کلمه کلیدی دقیق به طور همزمان انجام می شود. در این حالت ، وارد شویدegrep -w 'word1 | word2' testifile. لطفا توجه داشته باشید که در این مورد سلام نامه اضافه شده است ه، و سهمیه ها تنها هستند.

جستجوی رشته ها بدون کلمه خاص

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

نحو سلام چند استدلال دیگر را جمع آوری کرد که می توان به اختصار توضیح داد:

  • -من- فقط نام پرونده های مربوط به معیارهای جستجو را نشان دهید.
  • - اعلان های مربوط به خطاهای یافت شده را غیرفعال کنید.
  • -نه- نمایش شماره خط در پرونده؛
  • - قبل از خط تعداد بلوک را نشان دهید.

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

امروز ما تیم را با جزئیات جدا کردیم سلامموجود در توزیع های لینوکس. این یکی از استاندارد هاست و اغلب مورد استفاده قرار می گیرد. می توانید در مورد سایر ابزارهای محبوب و نحو آنها در مطالب جداگانه ما در لینک زیر بخوانید.

همچنین ببینید: دستورات متداول در ترمینال لینوکس

Pin
Send
Share
Send