linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while),选择语句(case)。下面我将通过例子介绍下,各个语句使用方法。
一、shell条件语句(if用法)
if语句结构[if/then/elif/else/fi]
if 条件测试语句
then
action
[elif 条件
action
else
action
]
fi
如果对于:条件测试语句不是很清楚,可以参考:linux shell 逻辑运算符、逻辑表达式详解
shell命令,可以按照分号分割,也可以按照换行符分割。如果想一行写入多个命令,可以通过“';”分割。
如:
[chengmo@centos5 ~]$ a=5;if [[ a -gt 4 ]] ;then echo 'ok';fi;
ok
实例:(test.sh)
#!/bin/sh
scores=40;
if [[ $scores -gt 90 ]]; then
echo "very good!";
elif [[ $scores -gt 80 ]]; then
echo "good!";
elif [[ $scores -gt 60 ]]; then
echo "pass!";
else
echo "no pass!";
fi;
条件测试有:[[]],[],test 这几种,注意:[[]] 与变量之间用空格分开。
二、循环语句(for,while,until用法):
语法结构:
1.for … in 语句
for 变量 in seq字符串
do
action
done
说明:seq字符串 只要用空格字符分割,每次for…in 读取时候,就会按顺序将读到值,给前面的变量。
实例(testfor.sh):
#!/bin/sh
for i in $(seq 10); do
echo $i;
done;
seq 10 产生 1 2 3 。。。。10空格分隔字符串。
2.for((赋值;条件;运算语句))
for((赋值;条件;运算语句))
do
action
done;
实例(testfor2.sh):
#!/bin/sh
for((i=1;i<=10;i++));do
echo $i;
done;
while语句结构
while 条件语句
do
action
done;
实例1:
#!/bin/sh
i=10;
while [[ $i -gt 5 ]];do
echo $i;
((i--));
done;
运行结果:========================
sh testwhile1.sh
10
9
8
7
6
实例2:(循环读取文件内容:)
#!/bin/sh
while read line;do
echo $line;
done < /etc/hosts;
运行结果:===================
sh testwhile2.sh
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 centos5 localhost.localdomain localhost
语法结构:
until 条件
do
action
done
意思是:直到满足条件,就退出。否则执行action.
实例(testuntil.sh):
#!/bin/sh
a=10;
until [[ $a -lt 0 ]];do
echo $a;
((a—));
done;
结果:
sh testuntil.sh
10
9
8
7
6
5
4
3
2
1
0
三、shell选择语句(case、select用法)
语法结构
case $arg in
pattern | sample) # arg in pattern or sample
;;
pattern1) # arg in pattern1
;;
*) #default
;;
esac
说明:pattern1 是正则表达式,可以用下面字符:
* 任意字串
? 任意字元
[abc] a, b, 或c三字元其中之一
[a-n] 从a到n的任一字元
| 多重选择
实例:
#!/bin/sh
case $1 in
start | begin)
echo "start something"
;;
stop | end)
echo "stop something"
;;
*)
echo "Ignorant"
;;
esac
运行结果:======================
testcase.sh start
start something
语法:
select 变量name in seq变量
do
action
done
实例:
#!/bin/sh
select ch in "begin" "end" "exit"
do
case $ch in
"begin")
echo "start something"
;;
"end")
echo "stop something"
;;
"exit")
echo "exit"
break;
;;
*)
echo "Ignorant"
;;
esac
done;
运行结果:
说明:select是循环选择,一般与case语句使用。
以上是shell的流程控制语句,条件,循环,选择。 欢迎讨论交流!
以上内容来源于:http://www.cnblogs.com/chengmo/archive/2010/10/14/1851434.html
分享到:
相关推荐
在本学习资料包中,包含了三本关于Linux Shell的重要书籍:《Linux Shell编程艺术》、《Linux Shell脚本攻略》以及《Linux Shell从入门到精通》,这些资源将帮助你全面深入地理解和掌握Linux Shell。 《Linux Shell...
### Linux Shell脚本全面学习知识点概述 #### 一、Linux脚本编写基础 **1.1 语法基本介绍** **1.1.1 开头** - **解释**: 每个Shell脚本都需要以 `#!/bin/sh` 开始,这行被称为shebang,用于指示系统如何执行此...
在这个"Linux Shell视频教学"中,你将深入学习如何有效地利用Shell进行日常的系统管理、文件操作以及自动化工作流程。 首先,你需要了解Shell的基础知识,包括如何启动和退出Shell,以及基本的命令行操作,如目录...
条件语句可以用来控制程序的执行流程,根据不同的条件执行不同的操作。常见的条件语句有 if 语句、case 语句、while 语句等。 3. 循环语句 循环语句是在 Shell 编程中非常重要的一个概念。循环语句可以用来重复...
通过学习《LINUX与UNIX SHELL编程指南》这本书,你将能够熟练掌握Linux Shell编程技巧,利用这些技能实现日常系统维护、自动化任务处理,甚至开发复杂的系统管理工具。在阅读过程中,结合实践操作,将理论知识转化为...
Linux Shell脚本是一种在Linux操作系统环境下执行的命令行脚本,它允许用户通过编写一系列的命令来自动化系统...这份“Linux Shell脚本攻略源代码”资源无疑是学习过程中的一大助力,建议结合实践进行深入学习和研究。
Shell脚本的基本构成包括:变量、环境变量、命令执行、流程控制(如if语句、for循环、while循环等)、函数定义和使用、输入输出处理等。掌握这些基本元素对于编写有效、高效的Shell脚本至关重要。 1. 变量和环境...
3. **流程控制结构**:Shell脚本支持条件语句(如`if`、`if-else`、`case`)和循环语句(如`for`、`while`、`until`)。这些控制结构使我们能够根据特定条件执行不同代码块,实现复杂的逻辑。 4. **函数与别名**:...
在“Linux Shell从初学到精通”中,你将学习如何使用重定向(>,>>)和管道(|)来操控输入和输出。重定向可以把命令的输出写入文件,而管道则可以将一个命令的输出作为另一个命令的输入,实现命令间的连接。 此外...
由于提供的文件内容存在...在学习Shell编程的过程中,重要的是不断实践,通过编写和运行脚本,来加深对知识点的理解和掌握。此外,还应关注社区和论坛,学习其他开发者的经验,以及跟踪最新的Shell编程动态和技术更新。
在学习过程中,记得多动手实践,结合自己的实际工作需求,不断探索和改进脚本,才能真正掌握Linux Shell编程的精髓。此外,还可以参考其他开源社区和论坛,如Stack Overflow、Unix & Linux Stack Exchange,获取更多...
4. **流程控制**:掌握break、continue等流程控制命令,实现复杂逻辑。 三、Unix命令 1. **文本处理命令**:熟悉grep(搜索)、sed(流编辑器)、awk(数据处理工具)等,进行文本过滤、替换、格式化等操作。 2. ...
4. **控制结构**:条件语句(if-else、case)和循环结构(for、while、until),用于实现基于条件的程序流程控制。 5. **函数**:如何定义和调用Shell函数,提高代码复用性。 6. **参数处理**:脚本接收命令行参数...
通过学习这个《Linux Shell脚本攻略》,你将能够编写出高效、易维护的Shell脚本来解决各种自动化任务,提高你的系统管理和开发效率。无论是日常运维还是嵌入式系统编程,熟练掌握Shell脚本都是不可或缺的技能。
总的来说,Linux shell命令的学习是一个不断实践和探索的过程。通过不断地练习和查阅手册,我们可以逐步掌握这个强大的工具,提升在Linux环境中的操作技能。对于开发者和系统管理员来说,精通shell命令不仅能提高...
本书《Linux Shell脚本攻略》(第2版)深入浅出地介绍了Shell脚本的编写技巧和实战应用,非常适合对Linux感兴趣的初学者学习。 **Shell脚本基础** 1. **Shell介绍**:Shell是Linux的命令解释器,它提供了一个与...
Linux Shell脚本是Linux系统中用于自动化任务的强大工具,它基于Bash或其他Shell解释器,允许用户编写一系列命令,以实现批处理、任务调度或任何需要自动化的工作流程。本PDF文档"shell-script-entry.pdf"提供了18页...