Portál AbcLinuxu, 12. května 2025 11:01

Dotaz: AWK: promenna v regularnim vyrazu

13.10.2004 01:28 Fernet Cheatrus
AWK: promenna v regularnim vyrazu
Přečteno: 322×
Odpovědět | Admin
Narazil jsem na problem, kdy nemuzu do regularniho vyrazu vlozit pres promennou nejaky retezec, s kterym by awk dale pracovalo. Napr. toto funguje awk '/somalec/ {print $2}' $LOG, ale toto uz ne awk '/$USER/ {print $2}' $LOG (USER="somalec"). Nevite, cim by to mohlo byt?
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

13.10.2004 09:36 Michal Kubeček
Rozbalit Rozbalit vše Re: AWK: promenna v regularnim vyrazu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Uvnitř jednoduchých uvozovek shell nepovažuje '$' za speciální znak, neexpanduje tedy ani proměnné.
13.10.2004 09:45 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: AWK: promenna v regularnim vyrazu
Odpovědět | | Sbalit | Link | Blokovat | Admin
man awk:
       -v var=val
       --assign var=val
              Assign the value val, to the variable  var,  before
              execution  of  the  program  begins.  Such variable
              values are available to the BEGIN block of  an  AWK
              program.

awk -v USER=somalec '/$USER/ {print $2}' $LOG

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.