我正在尝试使用bash函数RANDOM从包含整数和字母数字的变量中创建一个由8个字符组成的随机字符串(例如:var =“ abcd1234ABCD”)
谢谢。
使用参数扩展。${#chars}是可能的字符数,%是模运算符。${chars:offset:length}选择position处的字符offset,即本例中的0-length($ chars)个字符。
${#chars}
%
${chars:offset:length}
offset
chars=abcd1234ABCD for i in {1..8} ; do echo -n "${chars:RANDOM%${#chars}:1}" done echo