Linux 循环使用方法 (for while until)

for

1.for循环

for var(方法) in list
do
commands
done
例:#!/bin/bash
for test in 1 2 3 4 5
do
echo The next number is $test

done
运行结果:
The next number is 1
The next number is 2
The next number is 3
The next number is 4
The next number is 5
每次for命令遍历值列表,它都会将列表中的下个值赋给$test变量

2.从变量读取列表

#!/bin/bash
list=“xian beijing shanghai”
list=$list" wuhan"
for city in $list
do
echo “have you ever visited $city?”
done
运行结果:
have you ever visited xian?
have you ever visited beijing?
have you ever visited shanghai?
have you ever visited wuhan?

赋值语句向$list变量包含的已有列表中添加(或者说拼接)了一个值

3.从命令中读取值

#!/bin/bash
file=“city”
for city in $(cat $file)
do
echo “visit $city”
done
运行结果:
visit shanghai
visit xian
这里要注意city文件存在

4.字符串处理

#!/bin/bash
for test in “i don’t konw how to use the for command”
do
echo “word:$test”
done
运行结果:
word:i don’t konw how to use the for command
使用双引号来处理

5.从通配符读取目录

#!/bin/bash
for file in /*
do
if [ -d “$file” ]
then
echo " $file is a directory"
elif [ -f " $file" ]
then
echo " $file is a file"
fi
done
运行结果:
/app is a directory
/bin is a directory
/boot is a directory
/dev is a directory
/etc is a directory
echo/file1 is a file
/home is a directory
··························

6.C语言风格

#!/bin/bash
for (( i=0; i<10; i++ ))
do
echo “The number is $i”
done
运行结果:
The number is 0
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5
The number is 6
The number is 7
The number is 8
The number is 9

while

1 #!/bin/bash
var=10
while [ $var -gt 0 ]
do
echo $var
var= $[ $var - 1 ]
done
运行结果:
10
9
8
7
6
5
4
3
2
1
2 #!/bin/bash
n=70
while [ $n -gt 50 ]
do
if [ ( ( (( ((n%2)) -eq 0 ]
then
echo “偶数:$n”
fi
n= $(( $n-1))
done
运行结果:
偶数:70
偶数:68
偶数:66
偶数:64
偶数:62
偶数:60
偶数:58
偶数:56
偶数:54
偶数:52
只要测试条件成立,while命令就会不停地循环执行定义好的命令

until

var=100
until [ $var -eq 0 ]
do
echo $var
var= $[ $var - 25 ]
done
运行结果:
100
75
50
25
until命令和while命令工作的方式完全相反,条件成立时结束。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值