Portál AbcLinuxu, 26. dubna 2024 14:56


Dotaz: awk do proměné v bashy

1.10.2007 15:21 swejk | skóre: 7
awk do proměné v bashy
Přečteno: 342×
Odpovědět | Admin
Nevím si rady jak dostat řetězec do proměné v bash skriptu při použití grepu a awk.

#!/bin/sh
promena=cat soubor.html | grep "neco" | awk -f soubor_prikat
echo $promena

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

Odpovědi

1.10.2007 15:28 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: awk do proměné v bashy
Odpovědět | | Sbalit | Link | Blokovat | Admin
Použijte obrácené apostrofy (vnitřek se vykoná jako příkaz a jeho výstup je vrácen jako hodnota výrazu):
promena=`grep "neco" soubor.html | awk -f soubor_prikat`
echo $promena
Mimochodem, cat na začátku příkazu je zbytečný, většina příkazů umí načíst vstup i ze souboru, nebo můžete použít přesměrování <.
1.10.2007 16:29 ajikdpoe | skóre: 23 | blog: dvh
Rozbalit Rozbalit vše Re: awk do proměné v bashy
Jo, tieto reci zname, plivnete si na cat. Ale v realnom svete je to tak, ze si poviete, potrebujem pracovat so suborom xyz. Ok, cat xyz, potom premyslam co dalej. Budem selektovat riadky (grep) alebo len nieco nahradim (sed). Takto postupne vznikne cela kolona prikazov. Nehovoriac o tom ze niektore programy beru vstupny cez switch a kto si to ma pamatat.
1.10.2007 19:21 foo
Rozbalit Rozbalit vše Re: awk do proměné v bashy
Ten vtip je prave v tom, ze spravny uzivatel, nez neco udela, tak si to poradne rozmysli. Vas styl prace mi pripomina spis "pokus-omyl" coz prave neni nejlepsi metoda, protoze obsahuje ten "omyl"... :-D
1.10.2007 19:29 diverman | skóre: 32 | blog: život s tučňáčkem
Rozbalit Rozbalit vše Re: awk do proměné v bashy
totez se da zapsat jako
promena=$(grep "neco" soubor.html | awk -f soubor_prikat)
tuto formu preferuju namisto zpetnych apostrofu.
deb http://ftp.cz.debian.org/debian jessie main contrib non-free
1.10.2007 19:41 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: awk do proměné v bashy
S těmi apostrofy je to o znak kratší :-) Zrovna nedávno jsem něco opisoval, kulaté a složené závorky byly ve fontu dost podobné a já jsem byl nepozorný a nepřemýšlel jsem nad tím, co píšu, a hned jsem místo $(…) napsal ${…} Proto preferuju obrácené apostrofy (které pro změnu mohou být podobné jednoduchým apostrofům…). Ale sh umí obojí, většina shellů asi taky, takže záleží na každém, co si vybere.

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.