Date: Tue, 27 Mar 2001 00:21:51 -0800 (PST) From: "Rodney W. Grimes" <freebsd@gndrsh.dnsmgr.net> To: mikel@ocsinternet.com (Mikel) Cc: johnny.dang@johnnydang.net (Johnny Dang), FREEBSD-IPFW@FreeBSD.ORG (FreeBSD IpFW) Subject: Re: Scripting with IPFW Message-ID: <200103270821.AAA90749@gndrsh.dnsmgr.net> In-Reply-To: <3ABFB6CB.4A876CC2@ocsinternet.com> from Mikel at "Mar 26, 2001 04:38:19 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
> Hey man cool, hope you don't mind I had to try your script out and well I came
> up with this...thanks for sending back the code byte...
>
> #!/bin/sh
>
> oif=`ifconfig fxp0 |grep inet | head -1 | awk '{print $2}'`
Obviosly people have totally forgotten how to program in the
language of awk, so instead use 2 other tools to do what could
be done much cleaner:
oif=`ifconfig fxp0 | awk '/inet/ {print $2; exit}'`
Remeber, that grep X | awk 'foo' can almost always be rewritten
in a cleaner style as simply awk '/X/ foo'.
> omask=`ifconfig fxp0 |grep inet | head -1 | awk '{print $4}'`
> iif=`ifconfig rl0 |grep inet | head -1 | awk '{print $2}'`
> imask=`ifconfig rl0 |grep inet | head -1 | awk '{print $4}'`
The also seemed to have forgotten about doing common value
replacement by variables (fxp0 and rl0 should be replaced
by $something, which I would have called $iif, but that is
in use for something I would have called $iip).
New code:
oif=fxp0
iif=rl0
oip=`ifconfig ${oif} | awk '/inet/ {print $2; exit}'`
omask=`ifconfig ${oif} | awk '/inet/ {print $4; exit}'`
iip=`ifconfig ${iif} | awk '/inet/ {print $2; exit}'`
imask=`ifconfig ${iif} | awk '/inet/ {print $4; exit}'`
onet=`cidr -q ${oif} -h ${omask} | awk '/network/ {print $3}'`
inet=`cidr -q ${iif} -h ${imask} | awk '/network/ {print $3}'`
>
> onet=`cidr -q ${oif} -h ${omask} | grep network | awk '{print $3}'`
> inet=`cidr -q ${iif} -h ${imask} | grep network | awk '{print $3}'`
>
> echo "onet=\"${onet}\""
> echo "oif=\"${oif}\""
> echo "omask=\"${omask}\""
> echo
> echo "inet=\"${inet}\""
> echo "iif=\"${iif}\""
> echo "imask=\"${imask}\""
>
>
> Cheers,
> Mikel
>
> PS: cidr is a neat little util found in /usr/ports/net/cidr
>
>
> Johnny Dang wrote:
>
> > Thanks you all (especially UNIX, SCANNER, Mikel, and Scott)... That is why
> > this FreeBSD is great... This line will do it (I can now base on this and
> > change to fix my need)...
> >
> > ifconfig de0 | grep "inet" | head -1 | awk '{print $2}'
> >
> > Thanks to you all... But why the orginal commands from Linux won't work on
> > FreeBSD?
> >
> > ifconfig de0 | grep "inet" | cut -d -f2 | cut -d " " -f1 ?
> >
> > Just for curiosity? Btw, I download the new RedHAT Wolverines and Mandrake
> > 8.0 and those GUI look like Lindows now. But my boss likes it !!!!!
> >
> > ++++++++++++++++++++++++++++++++++++++++++++++++++
> > "The instructions said to use Windows 98 or better,
> > so I installed FreeBSD...It is working now!..."
> > ++++++++++++++++++++++++++++++++++++++++++++++++++
> > Johnny Dang <Johnny.Dang@johnnydang.net>
> > Senior Network Engineer/MCSE + Internet
> >
> > To Unsubscribe: send mail to majordomo@FreeBSD.org
> > with "unsubscribe freebsd-ipfw" in the body of the message
>
>
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-ipfw" in the body of the message
>
--
Rod Grimes - KD7CAX @ CN85sl - (RWG25) rgrimes@gndrsh.dnsmgr.net
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ipfw" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200103270821.AAA90749>
