0

テキスト ドキュメントに Web ページのソースがあります。次のような行がいくつかあります。

"rid" : 'http://web.site/urlhere',

http://web.site/urlhereLinux/ターミナルを使用してその部分だけを grep するにはどうすればよいですか?

4

1 に答える 1

1

-oオプションを grep に渡して、一致するパターンのみを表示するように指示できます。

grep -o http://web.site/urlhere somefile.txt

一般的な URL を探していると仮定すると、次のようなものから始めることができます (そしておそらくそれを改善します):

grep -o "'http.*'" someFile.txt | sed "s/'//g"

これにより、一重引用符の後のテキストhttpが検索され、その行から最後の一重引用符までのすべての文字が含まれます。次に、結果 (一致するパターンのみ) を sed にパイプし、一重引用符を削除します。

注:URLの後に一重引用符がさらにあると、問題が発生する可能性があります(ただし、質問ではそれについて言及されていません)...

あなたの質問は非常に具体的ではないので、問題を引き起こす可能性のある他の多くの入力条件がおそらくありますが、上記は良い出発点になるはずです.

grep の詳細: http://unixhelp.ed.ac.uk/CGI/man-cgi?grep

于 2012-05-24T01:53:24.660 に答える