作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想用 shell/bash 脚本从字符串中提取 url,如果字符串中有多个 url,则只应返回第一个。
我在下面提供了一些输入和输出字符串的示例。我猜我需要做一些正则表达式,但我不太熟悉如何在 bash/shell 中执行此操作?
Input: Take a look at this site: http://www.google.com/ and you'll find your answer
Output: http://www.google.com/
Input: http://www.google.com
Output: http://www.google.com
Input: Check out http://www.bing.com and http://www.google.com
Output: http://www.bing.com
Input: Grettings, visit <http://www.mywebsite.com> today!
Output: http://www.mywebsite.com
最佳答案
试试这个:
grep -Eo 'http://[^ >]+' yourFile|head -1
例如:
kent$ echo "Check out http://www.bing.com and http://www.google.com"|grep -Eo 'http://[^ >]+'|head -1
http://www.bing.com
kent$ echo "Grettings, visit <http://www.mywebsite.com> today"|grep -Eo 'http://[^ >]+'|head -1
http://www.mywebsite.com
关于regex - 如何从shell中的字符串中检索url?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16502743/
我是一名优秀的程序员,十分优秀!