0

ファイルに存在する行をgrepしようとしています: devnode "^sda[1-9]?$"

私が使用しているコマンドは次のとおりです。 grep 'devnode \"\^sda\[1-9\]\?\$\"' $file

しかし、うまくいかないようです。一部のソリューションで報告されているように、「grep '\$'」のように $ を使用するようにしましたが、機能しません。

誰でもこれで私を助けることができますか、それはイライラします。

ありがとう

4

2 に答える 2

0
grep 'devnode "^sda\[1-9\]?$"' file

grep は、「基本」と「拡張」という 2 つの異なるバージョンの正規表現構文を認識します。

grep 'foo' ファイル / 基本的な正規表現を使用

grep -E 'foo' file / 拡張正規表現を使用します。

基本的な正規表現を使用する場合、?、+、{、|、( および ) には特別な意味はありません。拡張正規表現を使用する場合は、次のようになります。

grep -E 'devnode "\^sda\[1-9\]\?\$"' file
于 2013-07-23T12:16:04.197 に答える