私はちょっと見てきましたが、与えられた引数が16進数のカラーコードであるかどうかを確認するための方法を見つけることができませんでした。ここで私が持っている私のコードは次のとおりです。bashのマッチした16進数のカラーコード
echo `expr match "$1" '\(#[A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})\)'`
私はファイル(hex.sh)に入れたとき、それはコード自体を返さなければならないのに対し、それは何も返しません。間違っているのですか、コードはどうすればいいのですか?
* *与えられた引数は何ですか? – RomanPerekhrest
私はbashファイルとして実行するので、次のようにします:sh hex.sh "#542541" –
'echo'に渡す出力をキャプチャする必要はありません。 'expr' *が既に標準出力に書き込まれているので、その構文はうまくいきます。 'expr match" $ 1 "'...''で十分です。 – chepner