[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: No ifconfig [Was: no /etc/inittab]



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Wed, Aug 16, 2017 at 04:58:24AM -0400, Gene Heskett wrote:
> On Wednesday 16 August 2017 03:28:43 Clive Standbridge wrote:
> 
> > oldIFS="$IFS"; IFS=': '; ip -o link | while read num interface other;
> > do declare -p interface; done; IFS="$oldIFS"
> 
> Now thats an interesting bit of bashism, and deeper into it than I have 
> waded. But for this local network, I know what they are so I can't think 
> of a situation that would make me use it.  But it may well be useful in 
> the future, so the message is marked to protect it from the expiry 
> rules.

Nice idiomatic little script.

Changing the input field separator (IFS) to parse lines is actually a
shell classic and should work on most shells (I just tested with dash),

The "declare", OTOH, is pretty Bashist. But it can be replaced by
a simple "echo":

This should be more portable (at least across the Bourne family):

  oldIFS="$IFS"; IFS=': '; ip -o link | while read num interface other;
    do echo "$interface"; done; IFS="$oldIFS" 

Cheers
- -- tomás
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAlmUFy4ACgkQBcgs9XrR2kaO0gCePvWrmGWeOv8KNGjLrrI2o2GO
cZ4An1lJ/2IVkGKF4Gc/nfyVa/0vV75M
=nic4
-----END PGP SIGNATURE-----


Reply to: