用Linux编写shell脚本,输入3个数并升序输出
时间: 2023-07-18 11:34:26 浏览: 87
好的,以下是一个简单的shell脚本,可以输入3个数并升序输出:
```bash
#!/bin/bash
# 读取3个数
echo "请输入3个数,以空格分隔:"
read num1 num2 num3
# 利用if语句判断大小关系并进行排序
if [ $num1 -lt $num2 ]
then
if [ $num1 -lt $num3 ]
then
echo -n "$num1 "
if [ $num2 -lt $num3 ]
then
echo "$num2 $num3"
else
echo "$num3 $num2"
fi
else
echo "$num3 $num1 $num2"
fi
else
if [ $num2 -lt $num3 ]
then
echo -n "$num2 "
if [ $num1 -lt $num3 ]
then
echo "$num1 $num3"
else
echo "$num3 $num1"
fi
else
echo "$num3 $num2 $num1"
fi
fi
```
运行这个脚本,就会输出输入的3个数的升序排序结果。例如,输入3个数分别为3、1、2,则输出结果为:
```
1 2 3
```
相关问题
shell实现输入三个数并进行升序排序
可以使用以下代码实现:
read -p "请输入三个数,用空格隔开:" a b c
echo "升序排序结果为:"
echo "$a $b $c" | tr ' ' '\n' | sort -n | tr '\n' ' '
这段代码会先提示用户输入三个数,然后将这三个数存储在变量 a、b、c 中。接着,使用 echo 命令输出排序结果。具体实现是将输入的三个数通过空格分隔符转换成一行,然后使用 tr 命令将空格替换成换行符,再使用 sort 命令进行排序,最后再将换行符替换回空格即可。
用Linux编写shell脚本,输出九九乘法表
好的,以下是一个简单的shell脚本,可以输出九九乘法表:
```bash
#!/bin/bash
for i in {1..9}
do
for j in {1..9}
do
if [ $j -le $i ]
then
product=$((i*j))
echo -n "$i*$j=$product "
fi
done
echo ""
done
```
运行这个脚本,就会输出如下的结果:
```
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81
```