首页 新闻 会员 周边 捐助

关于shell脚本编写从1、2、3、4中取三个随机的不重复数字所生成的数的问题

0
[待解决问题]

我编写了一个shell脚本,内容如下:
#!/bin/bash
for a in {1..4}
do
for b in {1..4}
do
for c in {1..4}
do
if [ $a -ne $b -a $a -ne $c -a $b -ne $c ]
then
num=$(($a100+$b10+$c))
echo $num
fi
done
done
done
此脚本可以从1、2、3、4四个数字中取三个不重复的数字组成三位数。
但,偶然一次,将echo $num写至if语句外,发现结果错误,内容如下
#!/bin/bash
for a in {1..4}
do
for b in {1..4}
do
for c in {1..4}
do
if [ $a -ne $b -a $a -ne $c -a $b -ne $c ]
then
num=$(($a100+$b10+$c))
fi
echo $num
done
done
done
此两个脚本执行的结果不同,想提问这是由什么原因造成的,if不是只有判断的能力嘛?小白一枚,希望大神指导。

P大仙的主页 P大仙 | 菜鸟二级 | 园豆:202
提问于:2018-11-15 21:52
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册