文字列が英数字で、特定の値 (たとえば 10) より短いかどうかを調べたい場合は、次のようにします (BASH + GREP で):
if grep '^[0-9a-zA-Z]\{1,10\}$' <<<$1 ; then ...
(ところで: $1、つまり最初の引数をチェックしています)
値 10 を変数に書き込みたい場合はどうすればよいですか。
UUID_LEN=10
if grep '^[0-9a-zA-Z]\{1,$UUID_LEN\}$' <<<$1 ; then ...
あらゆる種類のエスケープ、ブレースなどを試しましたが、エラー メッセージを回避できませんでした
grep: Invalid content of \{\}
グーグルでbashとgrepのチュートリアルを読んだ後、私はそれができないと確信しています。私が間違っている?これを回避する方法はありますか?