2016-08-26 4 views
0

特定の文字列を何度も含むファイルがあります。どのようにして、文字列のすべての出現を、次のスペースが出現するまで、その単語に続く文字とともに画面に印刷することができます。ファイルから特定の文字列を見つける

は、行が含まれていると仮定します。

example="123asdfadf" foo=bar 

私はexample="123asdfadf"を印刷したいです。

私はless filename | grep -i "example=*"を使ってみましたが、例が現れる完全な行を印刷していました。 -o以来

+3

[MCVE]一緒にあなたがこれまでに – fedorqui

+0

'グレップの-o」を試してみました何とを提供してください例\ b [^ \ s] * "yourfile'? –

+0

less filename | grep -i "example = *" – mb47

答えて

3
$ grep -o "example[^ ]*" foo 
example="abc" 
example="123asdfadf" 
+0

ありがとう、これは働いた。すべてのケースを含めるには、-iとともに-oを使用します。どうもありがとう。 – mb47

+0

@ mb47の場合は、緑色の矢印を確認してこれに答えてください。 – agc

+0

これはGNU grepで動作します – hek2mgl

0

のみのGNU grepのによってサポートされている、ポータブルソリューションはsedを使用することです:

sed -n 's/.*\(example=[^[:space:]]*\).*/\1/p' file 
関連する問題