如何使用 sed 或 awk 从文件中提取字段

刘易

我从文件 1 中的以下列表开始。

** server can't find bla.bla.com: NXDOMAIN
** server can't find bla2.bla.com: NXDOMAIN
** server can't find bla3.bla.com: NXDOMAIN
** server can't find bla4.bla.com: NXDOMAIN
** server can't find bla5.bla.com: NXDOMAIN

我想从每一行中删除 '** server can't find ' 和 ': NXDOMAIN' 并将结果放到一个新文件中。

结果应该是这样的——

bla.bla.com
bla2.bla.com
bla3.bla.com
bla4.bla.com
bla5.bla.com

我已经尝试了下面的 sed 命令,但我不断收到 > 提示。

sed '/\*\* server can't find /d' file1

任何想法或更好的方法来实现这一目标?

密码猴

单引号是问题。尝试:

sed "s/\*\* server can't find \(.*\): NXDOMAIN/\1/" file1

它使用捕获组来抓取您要保留的行的一部分。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章