Hi, guys:
I'm trying to define an alias in .cshrc with the embeded awk command, like this :
alias checketh0 "ip add ls eth0 |awk '/inet/{print $2}' |sed -n '1p' "
Then i run "source ~/.cshrc" and run "checketh0" command in the terminal , but the result is the following :
" inet 192.168.18.18/24 brd 192.168.18.255 scope global eth0"
but i want this result : 192.168.18.18/24
How do I do it ? Any help will be highly appreciated.
Thanks for you help ~
Am 06.03.2010 09:47, schrieb sync:
Hi, guys:
I'm trying to define an alias in .cshrc with the embeded awk command, like this :
alias checketh0 "ip add ls eth0 |awk '/inet/{print $2}' |sed -n '1p' "
Then i run "source ~/.cshrc" and run "checketh0" command in the terminal , but the result is the following :
" inet 192.168.18.18/24 brd 192.168.18.255 scope global eth0"
but i want this result : 192.168.18.18/24
How do I do it ? Any help will be highly appreciated.
Thanks for you help ~
Within your awk statement the "$2" is eaten and thus awk prints the whole line.
You can bypass this using following in your .cshrc
set eth0=`/sbin/ip addr ls eth0 | awk '/inet/ { print $2; exit }'` alias checketh0 "echo $eth0"
Alexander