Xargs: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Line 17: Line 17:


==Näited==
==Näited==
===Argumentide ''echo'' kolme kaupa===
$ echo 1 2 3 4 5 6 7 8 | '''xargs''' -n 3
'''-n 3''' määrab, et käsu echo tulemust kuvatakse kolme kaupa
<pre>
$ echo 1 2 3 4 5 6 7 8 | xargs -n 3
1 2 3
4 5 6
7 8
</pre>
5-6tk, Kuidas kustutada sadatuhat faili?
5-6tk, Kuidas kustutada sadatuhat faili?
==Kokkuvõte==
==Kokkuvõte==
(probleem pole nii õudne, kuid eksisteerib)
(probleem pole nii õudne, kuid eksisteerib)

Revision as of 23:34, 21 June 2011

Artikkel on pooleli!

Sissejuhatus

xargs käsku kasutatakse juhtudeks, kus on vaja jaotada mingi käsu tegevused väiksemateks gruppideks. xargs sai loodud probleemi tõttu, kus käsul on liiga palju argumente ning kernel (kuni versioonini 2.6.23) ei ole võimeline käivitama käsku.

  • xargs loeb argumente standard sisendist
  • xargs standard sisendi argumendid on piiritletud tühikutega või reavahetustega
  • peale standard sisendi lugemist käivitatakse soovitud käsk üks või mitu korda standard sisendist saadud argumentidega.

Näide, kus käsu käivitamine ebaõnnestub liigsete argumentide hulga tõttu:

$ mv * /mingi/teine/kataloog/
bash: /bin/mv: Argument list too long

Süntaks

<argumendid> | xargs <võtmed> <käsk <võtmed>>

Näited

Argumentide echo kolme kaupa

$ echo 1 2 3 4 5 6 7 8 | xargs -n 3

-n 3 määrab, et käsu echo tulemust kuvatakse kolme kaupa

$ echo 1 2 3 4 5 6 7 8 | xargs -n 3
1 2 3
4 5 6
7 8


5-6tk, Kuidas kustutada sadatuhat faili?

Kokkuvõte

(probleem pole nii õudne, kuid eksisteerib)

Allikad/Allikad

Autor

Marko Valing, AK31, 2010/2011