编写 Shell 脚本,使用 for 语句,求[0,50]区间内所有奇数的
时间: 2024-05-09 19:19:00 浏览: 123
和。
```shell
#!/bin/bash
sum=0
for ((i=1;i<=50;i+=2))
do
sum=$((sum+i))
done
echo "0~50区间内所有奇数的和为:$sum"
```
解释:
1. 首先定义一个变量 `sum`,用来记录奇数的和,初始值为 0。
2. 使用 `for` 循环,从 1 开始,每次增加 2,直到 50,这样就能取到 0~50 区间内的所有奇数。
3. 在循环体内,将当前奇数加到 `sum` 上。
4. 循环结束后,输出求和结果。
相关问题
一、编写一个Shell脚本,显示CPU使用情况,硬盘和内存的利用率,显示终端下的所有进程,查看每个进程打开的具体scoket。 二、编写一个Shell脚本,试利用if嵌套语句,找到3个数字的最大值,并输出找到的最大值。 三、编写一个Shell脚本,要求利用for循环计算1-100内(包括1和100)的奇数和。 四、编写一个Shell脚本,要求利用until计算20-50(包括20和50)数值的和。 五、编写一个Shell脚本,要求输出1-50(包括1和50)中除了40-45外的数值。
好的,以下是回答:
1. 显示系统信息和进程信息的Shell脚本:
```
#!/bin/bash
# 显示CPU使用情况、硬盘和内存的利用率
echo "CPU使用情况:"
top -bn1 | grep load | awk '{printf "%.2f%%\n", $(NF-2)}'
echo "硬盘利用率:"
df -h | awk '$NF=="/"{printf "%s\n", $5}'
echo "内存利用率:"
free -m | awk 'NR==2{printf "%.2f%%\n", $3*100/$2}'
echo "进程信息:"
ps -ef
echo "每个进程打开的具体socket信息:"
for pid in $(ps -ef | awk '{print $2}'); do
ls /proc/$pid/fd | xargs -I{} readlink /proc/$pid/fd/{} | grep socket
done
```
2. 找到3个数字的最大值的Shell脚本:
```
#!/bin/bash
# 找到3个数字的最大值
read -p "请输入第一个数字:" num1
read -p "请输入第二个数字:" num2
read -p "请输入第三个数字:" num3
if [ $num1 -gt $num2 ]; then
if [ $num1 -gt $num3 ]; then
echo "最大值为:$num1"
else
echo "最大值为:$num3"
fi
else
if [ $num2 -gt $num3 ]; then
echo "最大值为:$num2"
else
echo "最大值为:$num3"
fi
fi
```
3. 计算1-100内奇数和的Shell脚本:
```
#!/bin/bash
# 计算1-100内奇数和
sum=0
for ((i=1;i<=100;i+=2)); do
sum=$((sum+i))
done
echo "1-100内奇数和为:$sum"
```
4. 利用until计算20-50数值和的Shell脚本:
```
#!/bin/bash
# 利用until计算20-50数值和
sum=0
i=20
until [ $i -gt 50 ]; do
sum=$((sum+i))
i=$((i+1))
done
echo "20-50数值和为:$sum"
```
5. 输出1-50中除了40-45外的数值的Shell脚本:
```
#!/bin/bash
# 输出1-50中除了40-45外的数值
for ((i=1;i<=50;i++)); do
if [ $i -ge 40 ] && [ $i -le 45 ]; then
continue
fi
echo $i
done
```
shell脚本 求奇数和
Shell脚本是一种用于自动化执行一系列命令的脚本语言。它可以在Unix、Linux和其他类Unix系统上运行。Shell脚本通常以文本文件的形式存在,其中包含了一系列命令和控制结构,用于完成特定的任务。
要求奇数和,可以使用Shell脚本来实现。以下是一个示例脚本,用于计算给定范围内的奇数和:
```shell
#!/bin/bash
start=1
end=10
sum=0
for ((i=start; i<=end; i++))
do
if ((i % 2 != 0))
then
sum=$((sum + i))
fi
done
echo "奇数和为:$sum"
```
在这个示例脚本中,我们定义了起始值`start`和结束值`end`,并初始化了变量`sum`为0。然后,使用`for`循环遍历从起始值到结束值的所有数字。在循环中,使用条件判断语句`if`来判断当前数字是否为奇数,如果是奇数,则将其加到`sum`中。最后,使用`echo`命令输出奇数和的结果。
阅读全文