我有这个bash脚本:
internal = $(/ sbin / ifconfig $ adapter | grep“ inet addr” | awk -F:'{print $ 2}'| awk'{print $ 1}')
$ adapter =“ eth0”我要执行此操作,直到internal具有正确的值,然后再转到脚本的其余部分。您有任何想法如何处理吗?
之后,我将其编码以便通过短信发送IP!
先感谢您。
尝试这样做:
#!/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 $3}'
)
done
# send sms
如您所见,我仅使用一个管道:|
使用awk,不需要更多,awk
就可以完成整个处理。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句