Hi
how can I only get the previous field but not last field from awk?
but I can't use print $1....$2
as there are different fields in different line
thank you
Send instant messages to your online friends http://uk.messenger.yahoo.com
On Tue, Nov 11, 2008 at 04:44:16AM +0800, adrian kok wrote:
Hi
how can I only get the previous field but not last field from awk?
but I can't use print $1....$2
as there are different fields in different line
thank you
Does knowing the number if fields in a line help?
"`NF' is a built-in variable whose value is the number of fields in the current record. `awk' automatically updates the value of `NF' each time it reads a record. ..."
adrian kok wrote:
Hi
how can I only get the previous field but not last field from awk?
but I can't use print $1....$2
as there are different fields in different line
thank you
Send instant messages to your online friends http://uk.messenger.yahoo.com
As another posted, NF is what you want to play with. Here is an example:
ls -l | awk '{ num = NF - 2 ; print $num }'
Please note that awk can use both types of shell variable notations:
With or without the dollar sign on an assignment.
So assign a value based upon NF WITHOUT the dollar sign, and print the value WITH a dollar sign.
Hope this helps.
Have Fun!