Portál AbcLinuxu, 26. dubna 2024 11:36


Dotaz: xargs - da sa vypisat echo "aaa $nieco bbb"?

7.1.2014 10:11 gsnak | skóre: 22 | blog: gsnak
xargs - da sa vypisat echo "aaa $nieco bbb"?
Přečteno: 228×
Odpovědět | Admin
Da sa pomocou xargs spravit aby napr. echo vypisal argument v strede textu? v v podstrate mam toto:
$ ls | while read f; do echo "aaa $f bbb"; done
aaa subor1 bbb
aaa subor2 bbb
aaa subor3 bbb
A zaujimalo by ma ci sa to iste da dosiahnut s xargs:
$ ls | xargs -n1 echo "aaa bbb"
aaa bbb subor1
aaa bbb subor2         <-- toto neni co chcem
aaa bbb subor3
Proste by som potreboval ci je nejaky "placeholder" ktory by xargs-u povedal kam ma argument vlozit. V podstate by som potreboval nieco ako $1 u awk:
$ ls | awk '{ print "aaa "$1" bbb" }
aaa subor1 bbb
aaa subor2 bbb
aaa subor3 bbb
Tu pouzivam echo len na ukazku, v reale je miesto echo pouzity nejaky iny prikaz, takze nemozem awk pouzit.

Čo Rys, to vrah!

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

7.1.2014 10:29 Vojtěch Horký | skóre: 39 | blog: Vojtův zápisník | Praha
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
Odpovědět | | Sbalit | Link | Blokovat | Admin
xargs -n1 -I SOUBOR echo aaa SOUBOR bbb
I am always ready to learn although I do not always like to be taught. (W. Churchill)
7.1.2014 11:06 gsnak | skóre: 22 | blog: gsnak
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
Mam xargs 4.1 a -I parameter nepozna :(
Čo Rys, to vrah!
7.1.2014 11:10
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
Až na to, že parametr je "i"

ls | xargs -n1 -i{} echo "aaa {} bbb"

7.1.2014 11:18 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
  -I replace-str
         Replace occurrences of replace-str in the initial-arguments with
         names read from standard input.  Also, unquoted  blanks  do  not
         terminate  input  items;  instead  the  separator is the newline
         character.  Implies -x and -L 1.

  --replace[=replace-str]
  -i[replace-str]
         This option is a synonym for  -Ireplace-str  if  replace-str  is
         specified.   If  the replace-str argument is missing, the effect
         is the same as -I{}.  This option is deprecated; use -I instead.
7.1.2014 11:32
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
No von ten SOUBOR hlavně musí být bez mezery za I.
7.1.2014 11:56 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
Nemusí, to je právě jeden z rozdílů mezi "-i" a "-I".
7.1.2014 12:14
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
No jo, je to tak.
7.1.2014 11:27 gsnak | skóre: 22 | blog: gsnak
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
Toto funguje
Čo Rys, to vrah!
7.1.2014 10:35 NN
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
Odpovědět | | Sbalit | Link | Blokovat | Admin
ls | xargs printf 'aaa %b bbb\n'
7.1.2014 11:08 gsnak | skóre: 22 | blog: gsnak
Rozbalit Rozbalit vše Re: xargs - da sa vypisat echo "aaa $nieco bbb"?
Toto prave riesi len to echo, ja realne mam iny prikaz
Čo Rys, to vrah!

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.