找到短语后如何剪线?

时间:2015-01-09 03:42:20

标签: grep

我有一个大型文本文件,其中包含主机访问过的网站。格式如下:

Host : Url

许多网址看起来像这样:

http://google.com/?aslkdfjasldkfjaskldfjalskdjfalksdfjalksdjfa;sdlkfjas;dklfjasdklfjasdklfjasdklfjJUSTABUNCHOFRANDOMSTUFFaslkdjfaslkdfjaklsdfjaklsdjfasdkfjasdfklj 

很难看出原始网站是什么。我怎样才能使用grep来显示:

Host : http://google.com

我已经到处寻找在分隔符之后划一条线了#34; .com"并且无法找到解决方案。谢谢你的帮助!

奖励:我忘记了.net,.org和其他扩展程序。这可能是一个比我想象的更难的问题

1 个答案:

答案 0 :(得分:0)

试试这个:

grep -oP 'Host : http://[^/]+'
                        ^^^^

(所有不是斜线的字符)

或者如果您想指定.com

grep -oP 'Host : http://.*?\.com'

另一种解决方案:

cut -d'/' -f1-3