Tente fazer isso:
#!/bin/bash
PATH+=/sbin
adapter=eth0
internal=""
until [[ $internal =~ [0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3} ]]; do
sleep 1
internal=$(
ifconfig "$adapter" |
awk -F'(inet add?r:| +|:)' '/inet add?r/{print }'
)
done
# send sms
Como você pode ver, eu uso apenas um canal: |
com awk , não precisa mais, awk
pode fazer todo o processamento.