Linuxis saab xargs-i abil tei­sen­dada stan­dard­väl­jun­dit käskudeks ja neid otse kasutada. xargs-i ei kasutata Linuxis küll eriti sageli, kuid see võib protsesse oluliselt liht­sus­tada.

Mis on Linuxi käsk xargs?

xargs (lühend sõnast „extended argument”) on üks neist Linuxi käskudest, mida kasutajad kasutavad harva või üldse mitte. Siiski võib see käsk tööd oluliselt liht­sus­tada ja isegi arvuti jõudlust parandada. Liht­sa­malt öeldes ühendab Linuxi xargs kaks käsku, ana­lüü­si­des ühe väljundit ja ra­ken­da­des tulemusi teisele. See on kasulik, kui tuleb töödelda suurt hulka faile ja teha teatud üles­an­deid ikka ja jälle.

xargs kuulub enamiku Linuxi dist­ri­but­sioo­nide, näiteks Debiani või Ubuntu koosseisu ning seda pole vaja eraldi ins­tal­lida.

Kuidas xargs töötab?

xargs loeb andmeid stdinist (st standard sisendist) ja teisendab need kä­su­readeks. Vastav käsk tuleb sisestada käsule pa­ra­meet­rina või ar­gu­men­dina. Seejärel täi­de­takse vastavad käsud üks või mitu korda. Kui pa­ra­meet­rina ei sisestata mingit konk­reet­set käsku, kasutab xargs au­to­maat­selt Linuxi echo-käsku.

Milline on Linuxi xargs-i süntaks?

Kui soovid ter­mi­na­lis käsku xargs kasutada, kasuta järgmist süntaksit:

$ First_command | xargs [Options] [Second_command]
bash

Selle tulemusel täi­de­takse teine käsk esimese käsu ar­gu­men­ti­dega.

Millised valikud on käskl xargs jaoks saadaval?

Linuxi xargs-i ka­su­ta­miseks on palju võimalusi. Siin on olu­li­se­mad neist:

  • -0 või –null: See valik tagab, et iga märki kä­sit­le­takse sõna-sõnalt ning ar­gu­men­did eral­da­takse NULL-märgi abil.
  • -a või –arg-file: Selle valikuga ei loeta argumente standard sisendist, vaid failist.
  • -d või –delimiter: Selle valikuga tehakse eraldused eral­dus­märgi, mitte tühiku põhjal. Iga märki kä­sit­le­takse sõna-sõnalt.
  • -p või –in­te­rac­tive: See valik küsib enne iga käsu täitmist, kas soovite jätkata.

Näited Linuxi xargs-i ka­su­ta­mise kohta

Käsu xargs toimimist on kõige parem il­lust­ree­rida mõne näite abil.

$ find -name "*.txt" | xargs rm
bash

Selles näites ka­su­ta­takse xargs-i koos Linuxi find- ja rm-käskudega. Selle tu­le­mu­sena eemal­da­takse arvuti fai­li­süs­tee­mist kõik failid, mille laiendiks on .txt.

$ find -name "*.txt" | xargs grep "invoice"
bash

Leia kõik failid, mis si­sal­da­vad sõna „arve”. Selleks võid kasutada ka Linuxi grep-käsku.

Go to Main Menu