【发布时间】:2014-07-19 00:32:55
【问题描述】:
我想编辑 bashrc 文件以运行一个名为“myip”的简单函数。正如您可能猜到的那样,函数 myip 只打印我机器的内部 IP 地址。
就我的工作而言,这是脚本:
ifconfig en1 | awk '{ print $2}' | sort
这得到了我的输出:
10.0.0.12
options=1<PERFORMNUD>
flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST>
fe80::daa2:5eff:fe96:ba2f%en1
d8:a2:5e:96:ba:2f
autoselect
active
我正在使用 Mac OS X。
我怎样才能完成这项工作?
【问题讨论】:
-
哪个操作系统?哪个 ifconfig?
-
ifconfig en1 | sed -n '/inet addr/s/.*addr.\([^ ]*\) .*/\1/p'至少在 ubuntu、fedora 上工作...根据您的ifconfig en1输出,您可以根据需要进行更多调整。 -
/sbin/ifconfig $1 | grep "inet addr" | awk -F: '{print $2}' | awk '{print $1}'。定义位置,因为它在用户PATH中通常不存在,root 除外