web-dev-qa-db-ja.com

grepのリテラルアスタリスク「*」と行を一致させる

試した

$ echo "$STRING" | egrep "(\*)"

そしてまた

$ echo "$STRING" | egrep '(\*)'

そして他の無数のバリエーション。行のどこかにリテラルアスタリスクを含む行を一致させたいだけです。

23
Derrick

代わりにキャラクタークラスを試してください

echo "$STRING" | egrep '[*]' 
18
pavium

使用する:

grep "*" file.txt

または

cat file.txt | grep "*"
5
DaveParillo
echo "$STRING" | fgrep '*'

fgrepは、特殊文字を照合するために使用されます。

5
Rohit_Sharma

バックスラッシュでアスタリスクをエスケープするだけです。

grep "\*"
4
Paul Feakins

文字通りのアスタリスクに一致させる1つの方法は次のとおりです。

$ echo "*" | grep "[*]"
*
$ echo "*" | egrep "[*]"
*
$ echo "asfd" | egrep "[*]"
$ echo "asfd" | grep "[*]"
$ 

式を角かっこで囲むと、通常、1つの特殊文字を簡単にキャプチャできます。これは、たとえば、右角かっこやハイフンでも機能します。

これが角かっこグループに含まれていない場合は注意してください。

$ echo "hi" | egrep "*"
hi
$ echo "hi" | grep "*"
$
1
Mark Rushakoff