2017-09-15 12 views
1

私がどのように見えるgrep検索結果のスペースを削除するには?

何grepを返します(OSがWindows 7)はGNU grepの2.5.4を使用してパターンを見つけることができた:常に '(' だから、言葉の終わりとブラケットの間

Word1       (1.22) 
Word2 (-111.999) 
Word3 (123) 

スペースの様々な数があり は私がすべてのスペースまたはすべてのスペースを排除するためにはgrepを使用しますが、1、そうSE結果は次のようになりますことができます:。

Word1(1.22) 
Word2(-111.999) 
Word3(123) 

または(より良い)

Word1 (1.22) 
Word2 (-111.999) 
Word3 (123) 

(この括弧内のスペースは削除されても、削除されなくてもかまいません) sedなどの追加ツールが必要ですか? 私はコマンドラインツールを探しているので、テキストエディタの検索&の代わりにこの仕事をすることはできません。

ありがとうございました!

答えて

3

あなたはあなたの結果はsedへのパイプを使用することができます。

some_command | sed 's/[[:blank:]]*(/ (/' 

Word1 (1.22) 
Word2 (-111.999) 
Word3 (123) 

代わりのgrepあなたもawkを使用して検討してください。

awk '/Word/{sub(/[[:blank:]]*\(/, " (")} 1' file 
+0

@Sergeant:この作品を出しましたか? – anubhava

1

を単にパイプあなたの結果をtrコマンドに。

your_grep_command | tr -s ' ' 

tr -s ' ':各行で複数のスペースを1つに絞ります。

例:

$ echo "Word1       (1.22)" | tr -s ' ' 
Word1 (1.22) 
関連する問題