防止最后一个字符是数字

Prevent final character from being a number

在bash中,我运行下面得到一个随机字符串:

LC_CTYPE=C tr -dc 'a-z0-9' </dev/urandom | fold -w 5 | head -n1

但是,我需要确保最后一个字符不是数字。

我可以在命令中添加什么来执行此操作,使其保持一行?

(我希望它的长度相同,但如果我必须 trim 它到 4 个字符,那就这样吧)

grep到select那些符合条件的行,然后才取第一个:

LC_CTYPE=C tr -dc 'a-z0-9' </dev/urandom | fold -w 5 | grep '[^0-9]$' | head -n1

顺便说一下,echo $(x) 大多数时候是一个无意义的结构;你可以只写x