使用shell脚本用while语句打印出 * *** ***** *** *
时间: 2023-10-06 19:13:01 浏览: 94
可以使用以下的shell脚本来打印所需的图案:
```shell
#!/bin/bash
stars="*"
spaces=" "
count=1
while [ $count -le 5 ]; do
echo "$stars"
stars+="**"
count=$((count+1))
done
count=1
while [ $count -le 3 ]; do
echo "$spaces$stars"
spaces+=" "
stars=${stars%"**"}
count=$((count+1))
done
echo "$spaces$stars"
```
这段脚本使用两个循环来打印出所需的图案,第一个循环用于打印前五行,第二个循环用于打印后三行。在第一个循环中,stars变量会不断增加两个星号,而在第二个循环中,spaces变量会不断增加一个空格,并且stars变量会去除最后两个星号。
输出结果如下:
```
*
***
*****
***
*
```
相关问题
shell脚本使用while语句打印四行四列五角星
可以使用以下Shell脚本来打印四行四列五角星:
```
#!/bin/bash
i=1
while [ $i -le 4 ]
do
j=1
while [ $j -le 4 ]
do
echo " * "
echo " * * "
echo "* *"
echo " * * "
echo " * "
j=$((j+1))
done
i=$((i+1))
done
```
这个脚本使用了两个while循环,外循环控制行数,内循环控制列数。在内循环中,我们使用echo语句打印五角星的每一行。注意,我们在每一行前面添加了一些空格,以便使五角星在输出时居中。
shell脚本中的while语句语法
在shell脚本中,while语句用于创建一个循环,只要给定的条件为真,就会一直执行循环体内的代码。while语句的语法如下:
```shell
while condition
do
# 循环体代码
done
```
其中,`condition`是一个条件表达式,如果该表达式的值为真,则执行循环体内的代码。循环体内的代码可以是任意有效的shell命令或脚本。
以下是两个使用while语句的示例:
1. 循环输出1-10的数字:
```shell
#!/bin/bash
num=1
while [ $num -le 10 ]
do
echo $num
num=$(( $num + 1 ))
done
```
2. 使用while读取文件并打印文件内容:
```shell
#!/bin/bash
while read line
do
echo $line
done < ./a.txt
```
这个例子中,`while read line`用于逐行读取文件`a.txt`的内容,并将每行内容赋值给变量`line`,然后通过`echo`命令打印出来。
阅读全文