د "ایکسګز" کمانډ بیلګې

تفصیل او تعارف

د xargs قومانده په عموما د بولندوی کرښه کې کارول کیږي پداسې حال کې چې د یو قوماندې محصول د بل قوماندې لپاره د انفرادي دلیلونو په توګه تېرېږي.

په ډیری مواردو کې، کوم ځانګړي قوماندې لکه د قرارداد کولو لپاره اړتیا نشته، ځکه چې "پائپ" او "بیاکتنې" چلونکي هم ورته ورته لیږد ترسره کوي. په هرصورت، ځینې وختونه د اصلي پایپینګ او د بیارغونې میکانیزم سره مسلې دي، د بیلګې په توګه، که چیرې منطقونه په ساحو کې وي، هغه به د پایلو زیاتوالي.

پردې برسیره، xargs مشخص شوي قوماندې په بار بار، که اړتیا وي اجرا کوي، هغه ته د ټولو استدلالونو پروسس کولو لپاره پروسس کولو لپاره. په حقیقت کې، تاسو کولی شئ مشخص کړئ چې څومره دلیلونه باید د معیاري انډرن سټراټیټ څخه هر وخت لوستل شي کله چې xargs مشخص قوماندې اجرا کوي.

په عموم کې، د xargs قومانده باید وکارول شي که چیرې د یوې قوماندې محصول د کارولو لپاره کارول کیږي یا د دویم کمانډونو د یوې برخې په توګه کارول کیږي (د پایپ چلونکي کارول "|"). که چیرې ارقام د دویم کمانډ (معیاري) انډول وي نو مناسب تنظیم نلري بسیا وي.

د بېلګې په توګه، که تاسو د Ls کمانډ کاروئ د فایلونو نومونو او لارښوونو لیست پیدا کړئ، او بیا دا لیست د xargs کمانډ اجرا کولو ګونګو ته ولیکئ، تاسو کولی شئ مشخص کړئ چې څومره فایل نوم یا ډیری ډیری نومونه په پروسه کې پروسس شوي دي په هر ډول تکرار سره :

ls | xargs -n5 echo

په دې حالت کې، په یو وخت کې ګوندې پنځه فایل یا ډیری ډیری نومونه ترلاسه کوي. څرنګه چې ایونګ په پایله کې یو نوی کرښه زیاتوي، پنځه نومونه په هر کرښه لیکل شوي.

که تاسو کوم قوماندې اجرا کړئ چې لوی او نا اټکل شوي شمیر توکي) د مثال په ډول د فايل نومونه (چې د نور پروسس لپاره د بل قوماندې ته لیږل کیږي دا د ښه بحثونو لپاره خورا ښه نظر دی چې دویم کمانډ ترلاسه کوي چې دویم کمانډ ډیریږي او د راوتلو مخنیوی کوي.

لاندې کمانډ لین د فایلونو نومونه چې د موندنو لخوا تولید شوي وی ډیزاین کوي ​​200 د سي پي کمانډ ته لیږدول مخکې ډلې، چې دوی یې د بیکار ډریریپټ ته نقلوي.

ومومئ ./-type f -name "* .txt" - چاپ | xargs -200-cp-f {} ./ بیک اپ

د لټون کمان کې "./" عنصر د لټون لپاره اوسنی ډایرکټر مشخص کوي. د "بڼه ډول" دلیل د فایلونو لټون ته محدودوي، او "-name" * .txt "پرچم هغه څه فلټ کړي چې د" ټيټټ "تمدید نلري. د Xargs په نښه کولو کې د II پرچم { } تشریح د بھاپ د هرې نوم نوم استازیتوب کوي.

لاندې کمانډ د فايلونو په نوم یا د ډیری ډایرکټیر / tmp لاندې فایلونه پیدا کوي او لیرې کوي.

موندنه / tmp -name کور - ډول ډول بڼسټ | xargs / bin / rm-f

په یاد ولرئ چې دا به ناسم کار وکړي که کوم داسې نومونه موجود وي چې نوي نښې، یو واحد یا دوه ټکي ولري، یا ځایونه ولري. لاندې نسخه د نومونې نومونه داسې ډول پروسس کوي چې دوتنه یا ډیری ډیری نومونه یې یو واحد یا دوه ټکي لري، ځایونه یا نوي کرښې په سمه توګه سمبال شوي.

موندنه / tmp -name کور - بڼه f -print0 | xargs -0 / bin / rm-f

د دې اختیار په ځای تاسو کولی شئ د I-انځور بیرته کار واخلئ کوم چې هغه سیسټم مشخص کوي چې د دې لینډ په توګه د قوماندې دلیلونو کې د انټرینټ لیک سره بدل شوی:

ls dir1 | xargs-i {} -t mv dir1 / {} dir / {} / code>

د بدلولو تار د "{}" په توګه تعریف شوی. په دې معنی، د "{}" کومې پېښې د قوماندې دلیلونو کې د انټر عنصر په واسطه بدلېږي چې د پایپ عملیاتو له لارې استدلال کیږي. دا تاسو ته د دې توان ورکوي چې د انټر عناصر په ځانګړو پوستونو کې د قوماندې د حکمونو په اړه (بار بار) اعدام شي.