کشف قدرت دستور xargs در لینوکس

معرفی
این xargs دستور در لینوکس ابزار قدرتمندی است که به شما امکان می دهد دستورات را بر اساس ورودی دستور دیگری اجرا کنید. اغلب همراه با دستورات دیگری مانند find، grep، و ls برای انجام عملیات روی تعداد زیادی فایل یا داده. در این وبلاگ، برخی از ویژگی ها و مزایای کلیدی را بررسی خواهیم کرد xargs و چند مثال برای نشان دادن کاربرد آن ارائه کنید.
استفاده اساسی از xargs
استفاده اساسی از xargs این است که خروجی یک دستور را به عنوان ورودی به دستور دیگر منتقل کنید. برای مثال می توانید از دستور زیر برای حذف همه استفاده کنید .txt فایل های موجود در دایرکتوری فعلی:
find . -name "*.txt" | xargs rm

اینجا، find برای جستجوی همه استفاده می شود .txt فایل ها و xargs خروجی find را می گیرد و به عنوان ورودی به آن ارسال می کند rm، که فایل ها را حذف می کند.
افزودن گزینه های فرمان با xargs
xargs همچنین به شما اجازه می دهد تا گزینه هایی را به دستوراتی که اجرا می کند اضافه کنید. برای مثال می توانید از دستور زیر برای لیست کردن همه استفاده کنید .txt فایل های موجود در فهرست فعلی با مسیر کامل آنها:
find . -name "*.txt" | xargs ls -l

اینجا، -l یک گزینه برای ls فرمان، و xargs آن را به ls هنگام اجرا دستور دهید.
استفاده از xargs با find و grep
یکی از رایج ترین موارد استفاده برای xargs اجرای دستورات بر اساس خروجی است find و grep. برای مثال می توانید از دستور زیر برای پیدا کردن همه استفاده کنید .txt فایل های موجود در دایرکتوری فعلی حاوی کلمه “مثال”:
find . -name "*.txt" | xargs grep -l "example"

اینجا، grep برای جستجوی کلمه “مثال” در هر یک استفاده می شود .txt فایل، و xargs خروجی را می گیرد grep و آن را به عنوان ورودی به -l گزینه ای که فقط نام فایل ها را لیست می کند نه خطوط منطبق را.
استفاده از xargs با -I Option
این -I گزینه به شما امکان می دهد یک مکان نگهدار در خط فرمان مشخص کنید که xargs با ورودی جایگزین خواهد شد. برای مثال می توانید از دستور زیر برای تغییر نام همه استفاده کنید .txt فایل های موجود در دایرکتوری فعلی با .bak افزونه:
find . -name "*.txt" | xargs -I {} mv {} {}.bak

اینجا، -I {} مشخص می کند که ورودی از find جایگزین خواهد شد {} در mv دستور، که نام فایل ها را تغییر می دهد.
نتیجه
در نتیجه، xargs یک ابزار قدرتمند در خط فرمان لینوکس است که به شما امکان می دهد دستورات را بر اساس ورودی دستور دیگری اجرا کنید. این که آیا شما با آن کار می کنید find، grepیا هر دستور دیگری xargs می تواند گردش کار شما را تا حد زیادی ساده کند و به شما کمک کند کارهای تکراری را خودکار کنید. سعی کنید ترکیب کنید xargs به روال روزانه لینوکس شما وارد می شود و به سرعت مزایای فراوان آن را کشف خواهید کرد.
ممنون که خواندید 🧑💻
در ادامه با ما همراه باشید 🚀
✌️ و خروج




