我可以在 grep 的字符范围内使用环境变量吗?

Can I use environment variables inside a character range in grep?

我有一个list.txt的东西,说:

Apples
Bananas
Ananas
Coconut
Kiwi
Nuts

和 2 个环境变量 STARTCHAR 和 ENDCHAR。我想 grep 以 [$STARTCHAR-$ENDCHAR] 范围内的字符开头的水果。

这个有效:

grep '^[A-C]' list.txt | sort

所以我得到:

Ananas
Apples
Bananas
Coconut

但我希望字母范围是两个变量 STARTCHAR 和 ENDCHAR。我试过了

grep '^[$FT_LINE1-$FT_LINE2]' list.txt | sort

但是我收到这个错误

grep: invalid character range
grep "^[$FT_LINE1-$FT_LINE2]"

不对单引号字符串进行替换评估。双引号是。