Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Dec 2012 08:57:16 -0800
From:      Devin Teske <devin.teske@fisglobal.com>
To:        Polytropon <freebsd@edvax.de>
Cc:        Devin Teske <dteske@freebsd.org>, FreeBSD Questions <freebsd-questions@freebsd.org>, Jack Mc Lauren <jack.mclauren@yahoo.com>
Subject:   Re: using AWK
Message-ID:  <0EFF6378-A6EE-4222-8F3A-5F437E69D3BB@fisglobal.com>
In-Reply-To: <20121217172316.79d8e198.freebsd@edvax.de>
References:  <1355744359.61103.YahooMailNeo@web160104.mail.bf1.yahoo.com> <18B0C79B-AF04-48D1-AF26-1B8A8B3641C1@fisglobal.com> <20121217172316.79d8e198.freebsd@edvax.de>

next in thread | previous in thread | raw e-mail | index | archive | help

On Dec 17, 2012, at 8:23 AM, Polytropon wrote:

> On Mon, 17 Dec 2012 08:16:26 -0800, Devin Teske wrote:
>>=20
>> On Dec 17, 2012, at 3:39 AM, Jack Mc Lauren wrote:
>>=20
>>> Hi guys
>>>=20
>>> How can I read a file which contains a number and assign that number to=
 a variable via awk programming? By the way, I want to use this awk program=
 in a shell script.
>>>=20
>>> Thanks in advance
>>=20
>> Try this:
>>=20
>> awk -v file=3D/etc/ttys 'BEGIN { getline line <file; printf "First line =
from %s: %s\n", file, line }'
>=20
> Or more verbose:
>=20
>=20
>=20
>=20
> #!/bin/sh
>=20
> filename=3D$1
>=20
> echo "file is ${filename} with content:"
> cat ${filename}
>=20
> echo "calling awk..."
> awk -v filename=3D$filename "BEGIN {=20
>        getline no < filename
>        close filename
>        print no
>        print no * 2
> }"
>=20
>=20
>=20
>=20
> # EXAMPLE:
> # --------
> #
> # % ./awkvar.sh /tmp/no.txt
> # file is /tmp/no.txt with content:
> # 12345
> # calling awk...
> # 12345
> # 24690
>=20
>=20
>=20
> The example shows how to use the variable inside awk. You
> could get rid of the getline function in case the file
> contains only the number you're interested in. If you need
> further processing of the file, you can do that inside
> awk (e. g. omitting comment lines, obtain data from a given
> line number of specific pattern).
>=20
>=20
>=20
>=20
> --=20
> Polytropon
> Magdeburg, Germany
> Happy FreeBSD user since 4.0
> Andra moi ennepe, Mousa, ...

_____________
The information contained in this message is proprietary and/or confidentia=
l. If you are not the intended recipient, please: (i) delete the message an=
d all copies; (ii) do not disclose, distribute or use the message in any ma=
nner; and (iii) notify the sender immediately. In addition, please be aware=
 that any message addressed to our domain is subject to archiving and revie=
w by persons other than the intended recipient. Thank you.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0EFF6378-A6EE-4222-8F3A-5F437E69D3BB>