nu=`cat $1 | wc -l`
for ((i=1i<=$nui++))
do
sed -i ''$i's/[0-9]\{5\}/'$RANDOM'/' $1
done
说明:上述代码保存为/root/sed.sh ,并加上执行权限。
使用:/root/sed.sh filename
注意:sed的-i选项会直接修改源文件,使用前请备份!
演示:
#!/bin/bashcp=$(( $RANDOM % 3 )) #获取0-2的随机数
echo "请输入您的选择:0石头,1剪刀,2布。"
read my
case $my in
0)
if [ $cp = 0 ]then
echo "您出石头,电脑出石头"
echo "结果:平局"
elif [ $cp = 1 ]then
echo "您出石头,电脑出剪刀"
echo "结果:恭喜您获胜!"
else
echo "您出石头,电脑出布"
echo "结果:很遗憾您输了"
fi
1)
if [ $cp = 0 ]then
echo "您出剪刀,电脑出石头"
echo "结果:很遗憾您输了"
elif [ $cp = 1 ]then
echo "您出剪刀,电脑出剪刀"
echo "结果:平局"
else
echo "您出剪刀,电脑出布"
echo "结果:恭喜您获胜"
fi
2)
if [ $cp = 0 ]then
echo "您出布,电脑出石头"
echo "结果:恭喜您获胜"
elif [ $cp = 1 ]then
echo "您出布,电脑出剪刀"
echo "结果:很遗憾您输了"
else
echo "您出布,电脑出布"
echo "结果:平局"
fi
*)
echo "您的输入有误,请重新开始"
exit 1
esac
linux内核自1.3.30版本以来实现了一个随机数产生器,从理论上说它能产生真正的随机数,该随机数产生器是从设备驱动收集电路上的环境噪音放入熵池,它的实现代码在drivers/char/random.c中,自己去看吧欢迎分享,转载请注明来源:内存溢出
评论列表(0条)