我有一个使用ipcalc的命令,它给了我这个输出。有没有办法使用sed或awk只显示二进制值?
homer@deusexmachina ~/Documents $ ipcalc 192.168.1.2 | grep Address
Address: 192.168.1.2 11000000.10101000.00000001. 00000010
这样输出如下所示:
11000000.10101000.00000001。 00000010
提前致谢。
答案 0 :(得分:3)
您可以使用awk
打印第3和第4列
ipcalc 192.168.1.2 | awk '/Address/ {print $3,$4}'
您可以使用sed
,但awk
会更容易
ipcalc 192.168.1.2 | sed -n 's/Address: \+[^ ]\+ \+//p'
,因为您标记了linux
,很可能是您的sed
支持-r
ipcalc 192.168.1.2 | sed -r -n 's/Address: +[^ ]+ +//p'
答案 1 :(得分:0)
切割怎么样?
$ ipcalc 192.168.1.2 | grep Address | cut -d " " -f14-
或awk:
$ ipcalc 192.168.1.2 | awk '{ if ($1 == "Address:") { print $3 $4 }}'