我在bash shell中运行以下命令,试图仅返回[]
中的十六进制字符和紧随其后的整数值。第一次sed电话将取代所有内容,包括[
。第二个替换:
和]
。该命令会产生所需的结果,但我希望在单个sed语句中完成此操作,即不必再次通过sed。我试过很多这两个正则表达式的组合,但一直没能找到能够产生所需结果的组合。使用sed从输出中删除不需要的字符
echo 'dot1dTpFdbPort[00:02:6f:d9:16:ca] 12' | sed 's/^.*\[//g' | sed 's/[][\:]//g'
00026fd916ca 12
这个工作非常非常感谢你。 – user3320741
可以缩短为:'sed -e's /^.*\[// g; s/[] [\:] // g'' – Jotne