linux shell脚本使用结构化命令(2)

一.for命令

二.while命令

三.until命令

1.for命令基本格式

1 for var in list
2 do
3     commands
4 done
 1 [email protected]:~/testshell> cat fortest.sh
 2 #!/bin/bash
 3 #test for command
 4
 5 for city in beijing shanghai shenzhen dalian
 6 do
 7     echo the  city is $city
 8 done
 9 [email protected]:~/testshell> ./fortest.sh
10 the city is beijing
11 the city is shanghai
12 the city is shenzhen
13 the city is dalian

一种c语言风格的for命令

1 for (( variable assignment ; condition ; iterationprocess ))
2 do
3      commands
4 done
 1 [email protected]:~/testshell> cat fortest.sh
 2 #!/bin/bash
 3 #test for command
 4
 5 sum=0
 6 for (( i=1;i<=100;i++ ))
 7 do
 8     (( sum = sum + i ))
 9
10 done
11 echo sum= $sum
12
13 for (( a=1,b=1;a<5,b<3;a++,b++ ))
14 do
15     (( c = a + b ))
16     echo c = $c
17 done
18 [email protected]:~/testshell> ./fortest.sh
19 sum= 5050
20 c = 2
21 c = 4

2.while命令基本格式

1 while test command
2 do
3     other commands
4 done
 1 [email protected]:~/testshell> cat whiletest.sh
 2 #!/bin/bash
 3 #test while command
 4
 5 var=3
 6
 7 while [ $var -gt 0 ]
 8 do
 9     (( var = var -1 ))
10     echo var = $var
11 done
12 [email protected]:~/testshell> ./whiletest.sh
13 var = 2
14 var = 1
15 var = 0

3.until命令基本格式

1 until test commands
2 do
3     other commands
4 done
 1 [email protected]:~/testshell> cat untiltest.sh
 2 #!/bin/bash
 3 #test until command
 4
 5 var=5
 6
 7 until [ $var -gt 8 ]
 8 do
 9     (( var++ ))
10     echo var = $var
11 done
12 [email protected]:~/testshell> ./untiltest.sh
13 var = 6
14 var = 7
15 var = 8
16 var = 9

还有一点就是循环输出可以输出到屏幕,也可以输出到文件,就是在done命令后加个处理命令

 1 [email protected]:~/testshell> cat untiltest.sh
 2 #!/bin/bash
 3 #test until command
 4
 5 var=5
 6
 7 until [ $var -gt 8 ]
 8 do
 9     (( var++ ))
10     echo var = $var
11 done > result.txt
12 [email protected]:~/testshell> ./untiltest.sh
13 [email protected]:~/testshell> ls
14 untiltest.sh     result.txt
15 [email protected]:~/testshell> cat result.txt
16 var = 6
17 var = 7
18 var = 8
19 var = 9
时间: 2024-10-29 10:46:29

linux shell脚本使用结构化命令(2)的相关文章

linux shell脚本使用结构化命令

内容: 一.if-then命令 二.if-then-else命令 三.test命令 四.case命令 1.if-then结构化命令中最基本的类型,其格式如下: 1 if command 2 then 3 commands 4 fi 这里需要注意的是在其他语言中if 语句之后的对象是一个等式来测试是TRUE还是FALSE值,而在bash shell中if 语句会运行if 行定义那个命令.如果该命令退出码是数字0,则表示该命令运行成功,位于then 后面的命令就会运行.如果退出码是其他值,那么the

shell脚本编程-结构化命令2-for命令

1.for命令 (1)语法 for val in list; do commands done  list参数提供了一些列用于迭代的值,val值依次赋值为list中的值,知道list轮询结束. commands可以是一条或多条shell命令,echo $val可以查看当前循环的值 (2)读取列表中的值 $cat test #!/bin/bash # basic for command for test in A B C; do echo the next val is $test done $.

shell脚本编程-结构化命令1

1.分支语句 (1)if-then-fi 语句: 格式: if command; then commands fi 当command命令的退出状态码为$?=0时,进入分支,否则继续执行后面的命令. (2) if-then-else-fi 语句: 格式: if command; then commands1 else commands2 fi 当command命令的退出状态码为$?=0时,进入then分支,否则执行else分支命令. (3)if-then-elif-then-fi 语句: 格式:

Shell编程—使用结构化命令

1使用if-then语句 f-then语句有如下格式. if command then commands fi bash shell的if语句会运行if后面的那个命令.如果该命令的退出状态码是0(该命令成功运行),位于then部分的命令就会被执行.如果该命令的退出状态码是其他值, then部分的命令就不会被执行,bash shell会继续执行脚本中的下一个命令.fi语句用来表示if-then 语句到此结束. 举例: $ vim test1.sh #!/bin/bash # testing the

Linux Shell脚本编写——使用结构化命令(二)

结构化命令中,最基本的类型就是if-then语句 if command then command fi bash shell的if语句会执行if行定义的那个命令,如果命令的退出状态码是0,则代表成功执行,位于then部分的命令就会执行.如果if行定义的命令的退出状态码是其他,则then部分的命令将不会执行,且if-then语句不能测试跟命令的退出状态码无关的条件 代码2-1 [email protected]:/data# cat demo1 #!/bin/bash if date then e

第八章 shell学习之循环和结构化命令

for循环 1. 列表for循环 for variable in {list}  #有些像C++/CLR中的for each do ... done 如: 1. [[email protected] tmp]# cat b.sh #! /bin/bash for i in 1 2 3 4 5      #1 2 3 4 5等价于{1..5} do echo $i done [[email protected] tmp]# ./b.sh 1 2 3 4 5 2. [[email protected

Linux Shell脚本入门--cut命令

Linux Shell脚本入门--cut命令 cut cut 命令可以从一个文本文件或者文本流中提取文本列. cut语法 [[email protected] ~]# cut -d'分隔字符' -f fields <==用于有特定分隔字符 [[email protected] ~]# cut -c 字符区间 <==用于排列整齐的信息 选项与参数: -d :后面接分隔字符.与 -f 一起使用: -f :依据 -d 的分隔字符将一段信息分割成为数段,用 -f 取出第几段的意思: -c :以字符 (

《Linux Shell脚本攻略》 笔记 第二章:常用命令

<Linux Shell脚本攻略> 笔记 第二章:常用命令 1.cat cat -s //多个空白行压缩成一个 cat *.txt | tr -s '\n'   //移除空白行 cat -n //加行号 2.find 沿着文件层次结构向下遍历,匹配符合条件的文件,并执行相应的操作. eg: find ./ ! -name "*.txt" -print [[email protected] program_test]# find ./  -type f -name "

LINUX SHELL脚本攻略笔记[速查]

Linux Shell脚本攻略笔记[速查] 资源 shell script run shell script echo printf 环境变量和变量 pgrep shell数学运算 命令状态 文件描述符和重定向 cat 数组和关联数组 alias date 调试脚本 函数和参数 管道 读取命令输出 read 字段分隔符和迭代器 循环 比较和测试 find xargs tr md5sum sha1sum 对目录进行校验 sort uniq tempfile split bash变量匹配切分 exp