shell脚本编程之循环语句学习笔记_linux shell

本篇博客很简单,看一下shell编程使用到的循环语句,包括for循环,while循环,until循环,for后边跟一个变量,然后是一个集合,将集合中的东西赋给这个变量,每次循环执行,这跟java中的foreach很像,while循环和if使用同样的条件判断,满足条件执行语句,until和while相反,不满足条件执行语句,是不是很简单啊,下面看一下代码吧。

复制代码 代码如下:

#!/bin/sh
#for循环最基本的用法
for var in "hello" "xiao ta" "welcome to www.jb51.net"
do
echo -n "$var "
done
echo
#通配符扩展
for var in $(ls *.sh)
do
echo "$var"
done

#while循环,后边和if一样跟的都是条件
echo "please input secret"
read secret
while [ "$secret" != "xiao ta" ]
do
echo "try again"
read secret
done

#until循环和while相反,条件为假才执行
echo "please input text"
read text
until [ "$text" = "xiao ta" ]
do
echo "try again"
read text
done

exit 0

时间: 2024-09-25 21:26:01

shell脚本编程之循环语句学习笔记_linux shell的相关文章

shell脚本编程之if语句学习笔记_linux shell

我不是研究linux下的东西的,所以这里只对shell脚本的用法做一个介绍,把我自己在使用过程中出现的问题记录下来,同时也是写下一些shell脚本语法的规则,方便以后查看.先来学习一下条件语句if的用法,通过这一个简单的语法来说明一下shell脚本编程时候的东西. 复制代码 代码如下: #!/bin/sh echo "please input text1" read text1 echo "please input text2" read text2 #判断字符串等

shell脚本编程之case语句学习笔记_linux shell

case语句是用来实现多个if..else的功能的,但是用法上有些不同,学过其他语言的人都知道,case中要对变量进行匹配,如果有一个匹配成功的话就执行相应的语句.shell编程中的case语句也是这个意思,case会对字符串进行匹配,是从第一个模式开始的,如果有一个模式已经匹配成功的话,其他的模式就不会再进行匹配了,下面看下代码中的用法吧. #!/bin/sh echo "please yes or no" read input #case语句的基本用法,记住每一个匹配后边都有双分号

shell脚本编程之循环语句_linux shell

在运行脚本时重复执行一系列的命令是很常见的,这时我们就需要使用循环语句来达到这个目的. 一.for命令 格式:for 变量 in 列表:do 循环体 done for命令会遍历列表中的每一个值,并且在遍历完成后退出循环. 列表形式有以下几种: 1.在命令中定义的一系列的值: 2.变量: 3.命令: 4.目录: 5.文件. 实例1: 上例中使用{初始值..结束值}格式来表示一个区间的数值. 实例2:以变量作为列表: 实例3:用命令生成列表: 上例中使用seq命令来生成列表,seq命令的格式为:se

Shell脚本编程之判断语句_linux shell

一.单分支if语句 格式:if 判断条件:then statement1 statement2 ... fi 二.双分支的if语句 格式:if 判断条件; then statement1 statement2 ... else statementN ... fi 使用一个以前用过的脚本来说明这个结构. 三.多分支if语句 格式:if 判断条件1:then statement1 ... elif 判断条件2; then statement2 ... elif 判断条件3; then stateme

php中for while循环语句学习笔记

用for语句可以控制多个变量,从而实现多重循环的高级应用. 下面看一个用for语句输出9*9乘法表的程序:  代码如下 复制代码 <?php   for($i=1;$i<=9;$i++){     for($j=1;$j<=$i;$j++){    $sum=$i*$j;    echo $sum ."t";  }  echo "<br>";   }  ?> 除了前面提到的while循环语句,php还提供了for循环语句实现同样的

Shell正则表达式学习笔记_linux shell

正规表示法(或称为常规表示法)是透过一些特殊字符的排列,用以搜寻/取代/删除一列或多列文字字符串, 简单的说,正规表示法就是用在字符串的处理上面的一项『表示式』.正规表示法并不是一个工具程序, 而是一个字符串处理的标准依据,如果您想要以正规表示法的方式处理字符串,就得要使用支持正规表示法的工具程序才行, 这类的工具程序很多,例如 vi, sed, awk 等等. 一.正则表达式是什么? 正则表达式是用于描述字符排列和匹配模式的一种语法规则.它主要用于字符串的模式分割.匹配.查找及替换操作. 二.

关于Shell脚本效率优化的一些个人想法_linux shell

一.先说一下Shell脚本语言自身的局限性 作为解释型的脚本语言,天生就有效率上边的缺陷.尽管它调用的其他命令可能效率上是不错的. Shell脚本程序的执行是顺序执行,而非并行执行的.这很大程度上浪费了可能能利用上的系统资源. Shell每执行一个命令就创建一个新的进程,如果脚本编写者没有这方面意识,编写脚本不当的话,是非常浪费系统资源的. 二.我们在Shell脚本语言的局限性上尽可能的通过我们有经验的编码来提高脚本的效率. 1.比如我想做一个循环处理数据,可能是简单的处理一下数据,这样会让人比

shell脚本中取消重定向的方法实例_linux shell

在上一篇关于shell编程的例子中,有讲到把shell脚本进行扩展之后重定向到一个文件中,以便进行查看和调试http://www.jb51.net/article/62435.htm.但是,若是有另一种情况:只是在某些地方进行重定向,而其他地方不进行重定向.那么我们就来修改一下上一篇中的例子来进行这种需求的满足: 复制代码 代码如下: #!/bin/bash function setlogfile {     if ! [ -z "$1" ]; then         echo &q

Shell脚本实现监视指定进程的运行状态_linux shell

在之前的博客中,曾经写了自动化测试程序的实现方法,现在开发者需要知道被测试的进程(在此指运行在LINUX上的主进程的)在异常退出之前的进程的运行状态,例如内存的使用率.CPU的使用率等. 现用shell脚本实现指定进程的运行状态.直接上代码. #!/bin/sh echo "`date`" echo "Start $0---------" echo "" #每十秒监视一下 sec=10 #取得指定进程名为mainAPP,内存的使用率,进程运行状态