包含字符串的单词的grep或sed

jwb*_*ley 5 regex grep sed

示例文件:

blahblah 123.a.site.com   some-junk
yoyoyoyo 456.a.site.com   more-junk
hihohiho 123.a.site.org   junk-in-the-trunk
lalalala 456.a.site.org   monkey-junk
Run Code Online (Sandbox Code Playgroud)

我想在每一行的中间插入所有这些域,它们都有一个a.site我可以用来寻找的共同部分,但是我不知道怎么做而不返回整行?

也许这里需要sed或正则表达式,因为简单的grep是不够的?

cod*_*ict 9

你可以做:

grep -o '[^ ]*a\.site[^ ]*' input
Run Code Online (Sandbox Code Playgroud)

要么

awk '{print $2}' input
Run Code Online (Sandbox Code Playgroud)

要么

sed -e 's/.*\([^ ]*a\.site[^ ]*\).*/\1/g' input
Run Code Online (Sandbox Code Playgroud)