在bash中操作字符串

时间:2012-08-04 16:27:33

标签: linux string bash shell

我有一个文件,其中包含我在搜索后获得的google页面。我用了

w3m -no-cookie $search > google

制作页面

之后我需要获取该页面中包含的所有网站,所以基本上所有以“www”开头并以“/”结尾的字符串

我试过了:

grep -Fw "www" google | awk -F "/" '{ print $1";" }'

但它给了我www

之前的所有内容

如何删除?

我应该使用sed吗?

谢谢!

1 个答案:

答案 0 :(得分:3)

假设所有以www开头的网站都有点奇怪,但这里是:

你的问题是grep将返回整行。使用-o,它只会返回匹配的部分:

grep -wo "www.*" google | awk -F "/" '{ print $1";" }'

或简单地说:

grep -wo "www[^/]*" google