怎么才可以取字符串的随机呢?

hh9net
怎么才可以取字符串的随机呢?

比如有
for i in 你好 来了 呵呵
do
  echo $i
done


但是这样每次都是按顺序的,就是:

你好
来了
呵呵

如何可以让他随机去那3个字符,让它出现

来了
呵呵
你好

每次都随机

[[i] 本帖最后由 hh9net 于 2008-7-1 16:24 编辑 [/i]]

r2007
可能对楼主有所启发
[url]http://bbs.chinaunix.net/viewthread.php?tid=801667[/url]

寂寞烈火
[code]
array=(你好 来了 哈哈)
for i in ${array[@]};do echo ${array[$((RANDOM%${#array[@]}))]};done
[/code]

关于随机数请参阅
[url]http://bbs.chinaunix.net/viewthread.php?tid=551026&page=1#pid3647964[/url]
高级用法看2007提供的链接

fortuneteller
#!/bin/bash
str1="nihao"
str2="laile"
str3="haha"

for((i=1;i<=3;i++))
do
NUM=$((RANDOM%3+1))
#echo "$NUM"
eval echo /$str$NUM
done

其中的eval来自烈火等人的指点 我来此现学现卖了,哈哈

fortuneteller
advanced bash scripting中的随机数例子对对LZ很有会用 [url]http://www.linuxsir.org/main/doc/abs/abs3.7cnhtm/randomvar.html[/url]