makefileの16進カラーコードのgrep正規表現

makefileの16進カラーコードのgrep正規表現

したがって、有効な16進カラーコードと無効な16進カラーコードを含むテキストファイルがあります。間違ったコードをフィルタリングし、有効なコードのみを印刷したいです。コードを有効にするにはハッシュ記号が必要で、ハッシュの長さは6文字または8文字で、文字はAFでなければなりません。以下のgrepコマンドはmakefileに保存されており、ファイルを実行しようとするたびに以下に表示されるエラーが発生します。

注文する:

grep -ivE '^#([a-f0-9]{6}|[a-f0-9]{8})$' colours.txt

間違い:

/bin/sh: 1: Syntax error: Unterminated quoted string
Makefile:2: recipe for target 'run-task-1' failed
make: *** [run-task-1] Error 2

パスワード:

#b293a6
#ead58f
#a69d36a2
#067806
#afe6e
#7f0bf7ef
#dd85
#042847421
#1a283af

希望の出力:

#b293a6
#ead58f
#a69d36a2
#067806
#7f0bf7ef

ベストアンサー1

grep -ivE '^#([a-f0-9]{6}|[a-f0-9]{8})$' colours.txt

makeに渡されるコンテンツにするには、メタ文字として認識されないようにしてsh変数を置き換える必要があります。make$make

ただ使用してください$$

おすすめ記事