ምሳሌ "xargs" ትዕዛዝ

መግለጫ እና መግቢያ

xargs ትዕዛዝ በተለምዶ በትእዛዝ መስመር ውስጥ የአንድ ትዕዛዝ ውፅዓት እንደ ግቤት ክርክሮች ወደ ሌላ ትዕዛዝ ያስተላልፋል.

በአብዛኛዎቹ ሁኔታዎች "ፓይፕ" እና "ሪውሪሽን" ኦፕሬተሮች ተመሳሳይ አይነት ግብይት ስለሚያደርጉ, እንደ xargs የመሳሰሉ ልዩ ትዕዛዞች አያስፈልጉም. ሆኖም, አንዳንድ መሰረታዊ መርገቦች እና አቅጣጫ መቀየሪያ ዘዴዎች አሉ, ለምሳሌ, ክርክሮች ባዶ ቦታዎች ቢኖሩ, ያቆጠቆ ያበቃል.

በተጨማሪ, xargs አስፈላጊ ሆኖ ከተገኘ በተደጋጋሚ የተገለጸውን ትዕዛዝ በተቻለ መጠን ለማስኬድ በተደጋጋሚ ያስፈጽማል. እንዲያውም, xargs የሚሰጠውን ትዕዛዝ ሲያከናውን ስንት ነጋሪ እሴቶችን በመደበኛው የግብዓት ዥረት ላይ ሊነበቡ ይችላሉ.

በአጠቃላይ የአንድ መመሪያ ውፅዓት እንደ የውኃ አቅርቦት ስርዓት (እንደ "ፔኒዝያ" "ፔር" መጠቀም) ጋር የተጣመረ ሁለተኛ ትዕዛዝ አካል ወይም የአማራጭ አካል ሆኖ ጥቅም ላይ የሚውል ከሆነ የ xargs ትዕዛዝ ጥቅም ላይ መዋል አለበት. መረጃው የሁለተኛው ትዕዛዝ (መደበኛ) ግቤት እንዲሆን የታቀደ ከሆነ ቋሚ ቱቦው በቂ ነው.

ለምሳሌ, የ ls ትዕዛዝ የፋይል ስሞችን እና ማውጫዎችን ለማመንጨት ከፈለጉ እና ይህን ዝርዝር ወደ xargs ትዕዛዝ ኤሌክትሮኔል እንዲያስተካክሉ ከፈለጉ በፋይሉ ላይ ምን ያህል የፋይል ስሞች ወይም የማውጫ ስሞች እንደሚከተለው መጥቀስ ይቻላል. :

ls | xargs -n 5 ገላጭ

በዚህ አጋጣሚ የኤሌክትሮኒክስ ማስተላለፊያ አምስት ቅጽ ወይም የማውጫ ስሞች በአንድ ጊዜ ይቀበላል. ኢስተም በመጨረሻው መስመር ላይ አዲስ መስመርን በማከል በእያንዳንዱ መስመር ላይ አምስት ስሞች ይጻፋሉ.

ለቀጣይ ሂደቶች ወደ ሌላ ትዕዛዝ ወደ ሌላ ትዕዛዝ የተላለፉ በጣም ትልቅ እና ሊታተሙ የማይችሉ (ለምሳሌ የፋይል ስሞች) የሚመለሱ ትዕዛዝ ካከናወኑ ሁለተኛውን ትዕዛዝ ከመጠን በላይ መጫን እና መበላሸት ለማስቀረት የሚቀበለውን ከፍተኛ የነጋሪት ብዛት መቆጣጠር ጥሩ ሐሳብ ነው.

የሚከተለው የትዕዛዝ መስመር በ < c> ውስጥ ወደ የ " cp" ትይዩ ውስጥ ከመተላለፉ በፊት የ 200 ቡድኖችን ፈልገዋል .

ፈልግ. / -type f -name "* .txt" -print | xargs -l200 -i cp -f {} ./backup

በፍለጋ ትዕዛዞች ውስጥ ያለው የ «./» ኤለመንት ለመፈለግ የአሁኑን አቃፊ ይጠቁማል. የ «-type f» ክርክሩ ፍለጋውን ወደ ፋይሎች ይገድባል እንዲሁም የ «-name» * .txt "ጠቋሚ የ« .txt »ቅጥያ የሌለውን ማንኛውም ነገር ያጣራል.በ xargs ውስጥ ያለው -i ጥቆማው { } እሴት የእያንዳንዱን የእስቅም ፋይል ስም ይወክላል.

የሚከተለው ትዕዛዝ በአርአዱ / tmp ውስጥ ቁልፍ ያለው ፋይሎችን ያገኛሉ እና ያጠፋቸዋል.

ለማግኘት / tmp-name core -type f -print | xargs / bin / rm-f

አዲስ መስመሮችን, ነጠላ ወይም የጋብቻ ጥቅሶችን, ወይም ክፍተቶችን የሚያካትቱ ማንኛቸውም የፋይል ስሞች ካሉ ይህ ስህተት እንደሰራ ልብ ይበሉ. የሚከተለው ስሪት የፋይል ስሞችን ሂደቱን አንድ ጊዜ ወይም ነጠላ ዋጋዎች, ክፍተቶች ወይም አዲስ መስመር በትክክል መያዙን የሚያካትት ፋይሎችን ወይም የአቃፊ ስሞችን ያመላክታል.

ለማግኘት / tmp-name core -type f -print0 xargs-0 / bin / rm -f

-i- አማራጭ ይልቅ በዚህ ምሳሌ ውስጥ በተሰጠው የትግበራ ክምችት ውስጥ በግብአት መስመር የሚተላለፈውን ሕብረቁምፊ በሚለካው -I እትም መጠቀም ይችላሉ-

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

የሚሆነው ሕብረቁምፊ "{}" የሚል ፍቺ ተሰጥቶታል. ይህም ማለት በትዕዛዝ ግቤት ውስጥ ያሉ ማንኛውም «{»} ምልክቶች በጫጩ ክዋኔ በኩል ወደ ግብረቶች ሲተላለፉ በግቤት ኤለመንት ይተካሉ ማለት ነው. ይህም በተር በተዘረዘሩት ትግበራዎች ውስጥ (በተደጋጋሚ) ተተግብረው የግቤት አካላትን በተወሰኑ ቦታዎች እንዲቀመጡ ያስችልዎታል.