#! /bin/bash
#设置全局变量,作为函数的返回值
export randresult
function GetRandNum()
{
srcstring=$1
length=$2
#注意这里一定要设置成局部的,否则会与后面的冲突
local index=0
while [ $index -ne $length ]
do
#获得时间种子,现在到1970年的秒数
randtime=$(date +%s)
#因为同一秒相同的可能,再加上系统随机函数,不直接用系统随机函数,因为只有5位
randtime=$[ $randtime + $RANDOM ]
((randindex=randtime%length))
#截取字符串
randchar=${srcstring:$randindex:1}
#字符串链接
randresult=$randresult$randchar
((index++))
done
return $randresult
}
read -p "please input the source string" src
read -p "please input the length " length
index=0
while [ $index -ne 100 ]
do
#取消变量定义
unset randresult
#函数调用
GetRandNum $src $length
echo "the final result is $randresult\n"
((index++))
done
本文出自 “风清扬song” 博客,请务必保留此出处http://2309998.blog.51cto.com/2299998/1359862
原文:http://2309998.blog.51cto.com/2299998/1359862