你好,请帮我写一段简单的shell脚本,要求用上两个if语句
时间: 2024-05-06 22:19:27 浏览: 180
当然,我可以为您编写一个简单的shell脚本,满足您的要求。以下是一个简单的示例,包含两个if语句:
```
#!/bin/bash
echo "Please enter a number:"
read num
if [ $num -gt 10 ]
then
echo "The number is greater than 10."
else
echo "The number is equal to or less than 10."
fi
echo "Please enter a name:"
read name
if [ "$name" == "John" ]
then
echo "Hello, John!"
else
echo "Nice to meet you, $name."
fi
```
这个脚本会要求用户输入一个数字和一个名字,然后使用两个if语句分别检查输入的数字是否大于10,以及输入的名字是否为"John"。如果数字大于10,脚本将输出"The number is greater than 10.",否则输出"The number is equal to or less than 10."。如果名字为"John",脚本将输出"Hello, John!",否则输出"Nice to meet you, [name]."(其中[name]会被替换为实际输入的名字)。
希望这个示例可以帮助您更好地理解如何使用if语句编写shell脚本。如果您有任何其他问题,请随时问我。
相关问题
(1) 实验内容要求 1.掌握一些高级的Bourne shell程序语句。 2.使用Bourne shell编写一段程序脚本,完成以下功能: 用户输入若干(最多9个)个数字,求用户所输入的所有数字的平均数。 (2) 实验结果 该程序代码如下:
以下是 Bourne shell 编写的求平均数的脚本程序:
```sh
#!/bin/sh
# 提示用户输入数字
echo "请输入数字,最多输入9个,以空格分隔:"
# 读取用户输入的数字,使用空格作为分隔符
read -a numbers
# 计算数字个数和总和
count=0
sum=0
for number in "${numbers[@]}"; do
if [ -n "$number" ]; then
count=$((count + 1))
sum=$((sum + number))
fi
done
# 计算平均数
if [ "$count" -gt 0 ]; then
average=$(echo "scale=2; $sum / $count" | bc)
echo "平均数为:$average"
else
echo "没有输入数字!"
fi
```
这个脚本程序首先提示用户输入数字,并使用 `read` 命令读取用户输入的数字,存储在名为 `numbers` 的数组中。
接下来,使用 `for` 循环遍历数组中的每个数字,计算数字个数和总和。需要注意的是,由于用户输入的数字可能包含空格,因此需要使用 `if` 判断当前数字是否为空。
最后,如果数字个数大于 0,则计算平均数,并输出结果。否则,输出提示信息。
需要注意的是,在计算平均数时,使用了 `bc` 命令来进行小数运算,并使用 `echo` 命令来进行输出。`scale=2` 表示精确到小数点后两位。
阅读全文