我想在我的Debian 7.3上制作大型脚本(类似翻译和更多新的用户友好环境)。我有个问题。我只想使用命令提供给我的一些信息。例如,我的ifconfig看起来像:
eth0 Link encap:Ethernet HWaddr 08:00:27:a3:e3:b0 inet addr:192.168.1.103 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::a00:27ff:fea3:e3b0/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1904 errors:0 dropped:0 overruns:0 frame:0 TX packets:2002 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1309425 (1.2 MiB) T
我只想在行中显示IP地址:echo“您的IP地址为:(IP_ADDRESS)”。是否有任何命令允许我执行此类操作,以便在流中搜索我想获取的信息?我知道grep,sed但是我对他们不是很好。
grep
sed
编辑:首先要说谢谢您帮助我解决了这个问题,现在我知道更多了。其次,说项目正在进行中。如果有人会对它感兴趣,那就下午我。
要获取您的IP地址,请执行以下操作:
echo `ifconfig eth0 2>/dev/null|awk '/inet addr:/ {print $2}'|sed 's/addr://'`
这将为您提供eth0的IP地址。
编辑:由于Ubuntu的最新版本中的接口名称更改,这不再起作用了。相反,您可以使用以下代码:
hostname --all-ip-addresses或hostname -I,它执行相同的操作(为您提供主机的所有IP地址)。
hostname --all-ip-addresses
hostname -I