گاهی اوقات کاربران با نیاز به جستجوی اطلاعات خاص در هر فایل مواجه می شوند. اغلب اسناد پیکربندی و سایر داده های حجمی شامل تعداد زیادی خطوط است، بنابراین دستیابی داده های لازم غیرممکن است. سپس یکی از فرمان های ساخته شده در سیستم عامل لینوکس به نجات می رسد که به شما اجازه می دهد رشته ها را فقط چند ثانیه پیدا کنید.
از دستور grep در لینوکس استفاده کنید.
همانطور که برای تفاوت های بین توزیع های لینوکس، در این مورد آنها هیچ نقش ایفا نمی کنند، از آنجا که فرمان شما علاقه مند است گرپ به طور پیش فرض، آن در اکثر مجامع موجود است و دقیقا یکسان است. امروز ما دوست داریم که نه تنها این اقدام را مورد بحث قرار دهیم گرپ، بلکه همچنین برای جداسازی آرگومان اصلی که می تواند روش جستجوی را به طور قابل توجهی ساده سازی کند.
همچنین ببینید: ما به دنبال فایل هایی در لینوکس هستیم
کار آماده سازی
تمام اقدامات بعدی از طریق یک کنسول استاندارد انجام می شود، همچنین به شما اجازه می دهد تا فایل ها را تنها با مشخص کردن مسیر کامل به آنها و یا اگر "ترمینال" از دایرکتوری مورد نیاز راه اندازی شده است. شما می توانید پوشه پدر و مادر یک پرونده را بیابید و به آن در کنسول مانند این بروید:
- مدیر فایل را راه اندازی کنید و به پوشه دلخواه بروید.
- راست کلیک بر روی فایل مورد نظر و انتخاب کنید "خواص".
- در برگه "اساسی" خط را بخوان "پوشه والدین".
- حالا اجرا کن "ترمینال" روش مناسب، به عنوان مثال، از طریق منو یا با فشار دادن کلید ترکیبی Ctrl + Alt + T.
- در اینجا از طریق دستور به دایرکتوری بروید
cd / home / user / folder
کجا کاربر - نام کاربری و پوشه - نام پوشه
تعامل تیمگربه + نام فایل
اگر می خواهید محتوای کامل را مشاهده کنید. دستورالعمل های دقیق در مورد نحوه کار با این تیم در مقاله دیگر ما در لینک زیر یافت می شود.
خواندن بیشتر: نمونه هایی از دستور گربه در لینوکس
با پیروی از مراحل بالا می توانید از آن استفاده کنید گرپ، بودن در دایرکتوری لازم، بدون مشخص کردن مسیر کامل به فایل.
جستجوی محتوای استاندارد
قبل از بررسی تمامی استدلال های موجود، مهم است که جستجوی معمولی توسط محتوا را ذکر کنید. در آن لحظات مفید خواهد بود زمانی که شما نیاز به پیدا کردن یک بازی ساده با ارزش و نمایش تمام خطوط مربوطه.
- در خط فرمان وارد شوید
grep word testfile
کجا کلمه - اطلاعات مورد نیاز، و testfile - نام فایل هنگام انجام جستجوی خارج از پوشه، مسیر کامل مسیر زیر را مشخص کنید./ home / user / folder / filename
. پس از ورود به فرمان، کلید را فشار دهید وارد شوید. - تنها با داشتن گزینه های موجود آشنا می شود. خطوط کامل بر روی صفحه نمایش داده می شوند و مقادیر کلید در قرمز برجسته می شوند.
- مهم است که حروف حروف را در نظر بگیریم، زیرا کدگذاری لینوکس برای جستجو بدون به کار رفته در خصوص کاراکترهای بزرگ یا کوچک بهینه نیست. اگر می خواهید از تعریف یک ثبت نام جلوگیری کنید، وارد شوید
grep -i "word" testfile
. - همانطور که می بینید، در تصویر بعدی، نتیجه تغییر کرد و یک خط جدید اضافه شد.
جستجو با ضبط رشته
گاهی اوقات کاربران نیاز به پیدا کردن نه تنها یک رکورد دقیق در ردیفها دارند، بلکه همچنین باید اطلاعاتی را که بعد از آنها به دست می آیند پیدا کنید، مثلا هنگام گزارش یک خطای خاص. سپس راه حل صحیح برای اعمال ویژگی ها است. وارد کنسول شویدgrep-A3 "word" testfile
برای اضافه کردن سه خط زیر در نتیجه پس از مسابقه. شما می توانید بنویسید-A4
، سپس چهار خط اسیر خواهد شد، هیچ محدودیتی وجود ندارد.
اگر به جای آن-A
شما این استدلال را اعمال می کنید-B + تعداد خطوط
، به عنوان یک نتیجه، اطلاعات تا نقطه ورود نمایش داده خواهد شد.
اظهار نظر-C
به نوبه خود، قطاری از خطوط در اطراف یک کلمه کلیدی است.
در زیر میتوانید نمونههایی از انتساب استدلالهای مشخص را ببینید. لطفا توجه داشته باشید که ضروری است که پرونده را در نظر بگیریم و نقل قول های دوگانه بگذاریم.
grep -B3 "word" testfile
grep-3 "word" testfile
کلمات کلیدی را در ابتدای و پایان خطوط جستجو کنید
نیاز به تعریف کلمه کلیدی که در ابتدای یا انتهای خط است اغلب در طول کار با فایل های پیکربندی رخ می دهد، جایی که هر خط مسئول یک پارامتر است. برای دیدن ورود دقیق در ابتدا، باید ثبت نام کنیدgrep "^ word" testfile
. ثبت نام کنید ^ فقط مسئول استفاده از این گزینه است
جستجو برای محتوا در پایان خطوط تقریبا بر همین اصل صورت می گیرد، فقط در نقل قول ها باید شخصیت را اضافه کنید $، و تیم این فرم را به دست خواهد آورد:grep "word $" testfile
.
جستجو برای اعداد
هنگام جستجو برای مقادیر دلخواه، کاربر همیشه اطلاعاتی درباره کلمه دقیق موجود در رشته ندارد. سپس روش جستجو را می توان از طریق اعداد انجام داد که گاهی اوقات کار را بسیار ساده می کند. فقط لازم است که از فرمان سوال در فرم استفاده کنیدgrep "[0-7]" testfile
کجا «[0-7]» - محدوده ارزش ها، و testfile - نام فایل برای اسکن
تجزیه و تحلیل تمام فایل های دایرکتوری
اسکن تمام اشیاء در همان پوشه به صورت بازگشتی نامیده می شود. کاربر نیاز به اعمال تنها یک استدلال دارد که تمام فایل های موجود در پوشه را تجزیه و تحلیل می کند و خطوط مناسب و مکان آنها را نمایش می دهد. شما باید وارد شویدgrep -r "word" / home / user / folder
کجا / home / user / folder - مسیر دایرکتوری برای اسکن
مکان ذخیره فایل به صورت آبی نمایش داده می شود و اگر شما می خواهید خطوط را بدون این اطلاعات دریافت کنید، یک آرگومان دیگر را برای ایجاد فرمان اختصاص دهیدgrep -h -r "word" + مسیر پوشه
.
جستجوی دقیق کلمه
در ابتدای مقاله ما در مورد جستجوی کلمه معمول صحبت کردیم. با این وجود، با استفاده از این روش، ترکیبات اضافی در نتایج نشان داده می شوند. به عنوان مثال، شما کلمه را پیدا می کنید کاربر، اما این دستور نیز User را نمایش می دهد123, رمز عبورکاربر و سایر مسابقات، در صورت وجود. برای جلوگیری از این نتیجه، یک استدلال را اختصاص دهید-w
(grep -w "word" + نام یا محل فایل
).
این گزینه حتی اگر شما نیاز به جستجوی دقیق کلمات کلیدی دقیق در یک بار داشته باشید، اجرا می شود. در این مورد، وارد شویدegrep -w 'word1 | word2 testifile
. لطفا توجه داشته باشید که در این مورد به گرپ یک نامه اضافه شده است e، و نقل قول ها تک هستند.
جستجو برای رشته ها بدون یک کلمه خاص
ابزار مورد نظر قادر است نه تنها برای پیدا کردن کلمات در فایل ها، بلکه همچنین برای نمایش خطوطی که هیچ مقدار مشخص شده توسط کاربر وجود ندارد. سپس قبل از ورود به مقدار کلید و فایل اضافه شده است-v
. با تشکر از او، هنگامی که فرمان را فعال می کنید، فقط اطلاعات مرتبط را مشاهده خواهید کرد.
نحو گرپ چند استدلال دیگر را گردآوری کردیم که به طور خلاصه میتوان گفت:
من
- فقط نام فایل هایی را که با معیارهای جستجو مطابقت دارند نشان دهید-s
- غیر فعال کردن اعلان ها در مورد اشتباهات یافت شده-n
- نمایش شماره خط در فایل؛-b
- شماره بلوک قبل از خط نشان داده شود.
هیچ چیز مانع از اعمال چندین استدلال به یک نتیجه می شود، فقط آنها را با یک فضای جداگانه وارد کنید، و فراموش نکنید که حساب کاربری را به حساب آورید.
امروز ما تیم را به تفصیل تفکیک کرده ایم گرپموجود در توزیع های لینوکس. این یکی از استاندارد و اغلب استفاده می شود. شما می توانید در مورد سایر ابزارهای محبوب و نحو آنها در مواد جداگانه خود را در لینک زیر مطالعه کنید.
همچنین ببینید: دستورات اغلب مورد استفاده در ترمینال لینوکس