اطلاعیه

بستن
هنوز اعلام نشده است.

آموزش پیدا کردن یک کلمه یا عبارت خاص در فایل ها و دایرکتوری ها

بستن
X
  • فیلتر کردن
  • زمان
  • نمایش
پاک کردن همه
پست های جدید

  • آموزش پیدا کردن یک کلمه یا عبارت خاص در فایل ها و دایرکتوری ها

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

    آسانترین راه برای انجام دادن این کار استفاده از ابزار جستجوی الگو (دستور grep) میباشد که یک ابزار کامند لاینی معروف، قدرتمند، موثر و قابل اطمینان برای پیدا کردن الگوها و کلمات از فایل ها یا دایرکتوری ها در سیستم های شبه Unix میباشد.


    همچنین توصیه میشود مطالعه شود.

    11 دستور پیشرفته Grep در Character Classes و Bracket Expressions


    دستور زیر همه فایل هایی که شامل عبارت "mina" میباشند را به صورت recursive در دایرکتوری /root سرچ خواهد کرد.
    کد PHP:
    # grep -Rw /root/ -e 'mina' 
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Find-a-Word-in-Directory-1.png مشاهده: 1 حجم: 16.8 کیلو بایت



    در دستور بالا آپشن -R به grep میگوید که همه فایل های تحت دایرکتوری را به صورت recursive بخواند. آپشن -w برای انتخاب تنها آن خط هایی است که شامل عبارت match شده هستند و آپشن -e برای مشخص کردن الگوی عبارتی که قرار است سرچ شود استفاده میشود.

    شما باید از دستور sudo به هنگام جستجو فایل و دایرکتوری های خاص که نیاز به سطح دسترسی root دارند استفاده کنید (مگر اینکه شما در سیستم خود با اکانت root لاگین هستید).
    کد PHP:
    sudo grep -Rw / -'mina' 
    برای اینکه حساسیت به حروف بزرگ و کوچک را (case sensitive) نادیده بگیریم از آپشن -i همانند زیر استفاده میکنیم.
    کد PHP:
    # grep -Riw /root/ -e 'mina' 
    اگر شما بخواهید خط دقیقی که عبارت مورد نظر در آن موجود است را بدانید باید از آپشن -n استفاده کنید.
    کد PHP:
    # grep -Rinw /root/ -e 'mina' 
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Find-String-with-Line-Number-2.png مشاهده: 1 حجم: 17.9 کیلو بایت



    فرض کنید دایرکتوری که شما میخواهید در آن جستجو کنید شامل چندین نوع فایل باشد شما همچنین میتوانید نوع فایل هایی که برای عبارت مورد نظر میخواهید سرچ کنید، را مشخص کنید. که میتوانید با استفاده از آپشن --include و مشخص کردن پسوند فایل ها به هدف خود برسید.

    در مثال زیر grep تنها همه فایل های .sh را بررسی میکند.
    کد PHP:
    # grep -Rnw --include=\*.sh /root/ -e 'mina' 
    علاوه براین امکان جستجوی بیشتر از یک الگو نیز با استفاده از دستور زیر وجود دارد.
    کد PHP:
    # grep -Rinw /root/ -e 'mina' -e 'maryam' 
    برای دیدن سایز بزرگ روی عکس کلیک کنید  نام: Find-Multiple-Words-in-Files-3.png مشاهده: 1 حجم: 71.1 کیلو بایت



    اگر شما هر گونه ترفند کامند لاینی دیگری برای جستجوی عبارت یا کلمه در فایل ها میشناسید آنرا با ما به اشتراک بگذارید.
    ویرایش توسط Habili : http://linux-zone.org/forums/member/5-habili در ساعت 10-13-2018, 05:07 PM
پردازش ...
X