所以我有一个在阅读之前必须转换成文本的文件,不管怎样,这就是我的两难境地。
我能做到
$convertfile filename|cut -c39,40我会收到两封信(这是我正在寻找的,但我也需要这样做
$convertfile filename|cut -c45--56并获得一个MAC地址,恰好在同一行上面的两个字母是,我需要这两个打印在屏幕上。
我知道awk在这一点上可以帮助我,但我不能使用列,因为字符将连续出现。
我们举个例子
12345: 45 45 : 12131 : XU : MACADDRRESS1我想打印XU MACADDRESS1并将其与/proc/net/arp中的相匹配
现在,我要转换的文件的mac地址不包括proc net arp中的":“,我可以使用sed将grep的输出转储到一个文本文件中,然后对它们进行匹配。
不管怎么说,最终的结果是
XU - IP 或
XU MACADDRESS1 IP我知道这是很多工作,但任何帮助都是非常感谢的。
发布于 2013-12-05 02:19:51
不确定是否完全理解了这个问题。但这可能会有所帮助:
> s='12345: 45 45 : 12131 : XU : MACADDRRESS1'
> awk -F '[: ]+' '{print $5, $6, "IP"}' <<< "$s"
XU MACADDRRESS1 IP发布于 2013-12-05 02:23:45
s='12345: 45 45 : 12131 : XU : MACADDRRESS1'
MAC=$(awk '{print $9}' <<< $s)
IP=$(grep "$MAC" /proc/net/arp|awk '{print $1}')https://stackoverflow.com/questions/20382546
复制相似问题