このbashスクリプトは、grepの結果から先頭の空白を削除することになっています。
#!/bin/bash
grep --color=always $@ | sed -r -e's/:[[:space:]]*/:/'
しかし、それは空白と一致しません。置換テキストを「-」に変更すると、出力に表示されますが、空白が削除されることはありません。「*」を付けずに、「*」をエスケープして、「+」を付けて試してみましたが、何も機能しません。誰かがなぜそうしないのか知っていますか?
(Ubuntu 12.04でsedバージョン4.2.1を使用しています。)
おかげさまで、これは私の変更したスクリプトであり、grepの色を表示し、先頭の空白をトリミングします。
#!/bin/bash
grep --color=always $@ | sed -r -e's/[[:space:]]+//'