Shell学习笔记(11)-流程控制之select、until语句
2012-11-15 13:37
656 查看
until的语法
语法规则:
until 条件测试
do
命令区域
done
示例1:
#! /bin/Bash
declare -i i=1
declare -i sum=0
until ((i>10))
do
let sum+=i
let ++i
done
until无穷循环
until ((0))
do
echo 'Bash forever.'
done
until false
do
echo 'Bash forever.'
done
select命令
语法规则:
select 选项变量 in 串行
do
命令区域
done
select命令建立一个列表。列表的选项,即串行中的各个字段。列表提示符号由Bash的内置变量PS3来定义,默认值是#?。只要改变PS3的值,用户可自定义提示符号。select会给各个选项一个编号,编号由1开始递增。当使用者键入编号,选择其中某一选项时,select会给各个选项一个编号,编号由1开始递增。当使用者编入编号,选择其中某一选项时,该选项的内容就设置给选项变量,而键入的变量值则放入REPLY变量中。使用者每键入一次编号,就执行一次命令区域。
示例1:
#! /bin/bash
PS3='请选择:' //修改PS3的内容,自定义提示符号
select f in * //由目前的工作目录,读取所有的文件(即通配符*的用意),以各个文件名为选项,建立列表
do
echo "你键入的编号是$REPLY,选择的文件是:$f"
done
执行结果如下:
1) build.sh 12) lottery.jsp
2) clear_log_all.sh 13) lotteryxml.php
3) fn.sh 14) OracleLog.properties
4) httpd-2.2.17 15) restart.sh
5) jd-lottery 16) stack2.txt
6) jd-lotteryman-web.war 17) stack.txt
7) jd-lottery-web.war 18) stac.txt
8) jd-lottery.zip 19) stop.sh
9) l 20) test
10) logs 21) tmp
11) logs_man 22) work
请选择:1
你键入的编号是1,选择的文件是:build.sh
请选择:
break命令可以阻断循环
#! /bin/Bash
PS3='请选择: '
menu="/ /root /etc /home /usr/local /var/log"
select f in $menu
do
echo "你键入的编号是$REPLY,选择的目录是: $f"
break
done
语法规则:
until 条件测试
do
命令区域
done
示例1:
#! /bin/Bash
declare -i i=1
declare -i sum=0
until ((i>10))
do
let sum+=i
let ++i
done
until无穷循环
until ((0))
do
echo 'Bash forever.'
done
until false
do
echo 'Bash forever.'
done
select命令
语法规则:
select 选项变量 in 串行
do
命令区域
done
select命令建立一个列表。列表的选项,即串行中的各个字段。列表提示符号由Bash的内置变量PS3来定义,默认值是#?。只要改变PS3的值,用户可自定义提示符号。select会给各个选项一个编号,编号由1开始递增。当使用者键入编号,选择其中某一选项时,select会给各个选项一个编号,编号由1开始递增。当使用者编入编号,选择其中某一选项时,该选项的内容就设置给选项变量,而键入的变量值则放入REPLY变量中。使用者每键入一次编号,就执行一次命令区域。
示例1:
#! /bin/bash
PS3='请选择:' //修改PS3的内容,自定义提示符号
select f in * //由目前的工作目录,读取所有的文件(即通配符*的用意),以各个文件名为选项,建立列表
do
echo "你键入的编号是$REPLY,选择的文件是:$f"
done
执行结果如下:
1) build.sh 12) lottery.jsp
2) clear_log_all.sh 13) lotteryxml.php
3) fn.sh 14) OracleLog.properties
4) httpd-2.2.17 15) restart.sh
5) jd-lottery 16) stack2.txt
6) jd-lotteryman-web.war 17) stack.txt
7) jd-lottery-web.war 18) stac.txt
8) jd-lottery.zip 19) stop.sh
9) l 20) test
10) logs 21) tmp
11) logs_man 22) work
请选择:1
你键入的编号是1,选择的文件是:build.sh
请选择:
break命令可以阻断循环
#! /bin/Bash
PS3='请选择: '
menu="/ /root /etc /home /usr/local /var/log"
select f in $menu
do
echo "你键入的编号是$REPLY,选择的目录是: $f"
break
done
相关文章推荐
- 【Linux学习笔记】Shell 基础(3) — Shell流程控制语句
- Shell学习笔记(10)-流程控制之while语句
- Shell学习笔记(9)-流程控制之For语句
- Shell学习笔记(8)-流程控制之IF语句
- Linux Bash Shell学习(十二):流程控制——select
- Linux学习笔记 - Shell 控制语句
- (JAVA SE 学习笔记)Java.SE.第006讲.流程控制语句.Flow.Control.Statement
- Java学习笔记八:Java的流程控制语句之循环语句
- 黑马程序员——学习笔记03.java流程控制语句和函数
- (JAVA SE 学习笔记)Java.SE.第007讲.流程控制语句.续.Flow.Control.Statement.Cont
- 【转】shell学习笔记(七)——流程控制之while
- java学习笔记(七)流程控制之循环语句
- linux shell编程控制结构:expr、let、for、while、until、shift、if、case、break、continue、函数、select 学习笔记
- C++学习笔记 4th —— 万能流程控制if语句
- python学习笔记:第六天(流程控制语句)
- Java SE学习笔记:运算符、流程控制语句、循环
- java学习笔记4——流程控制语句
- (原创)c#学习笔记04--流程控制03--分支03--switch语句
- PL/SQL学习笔记[5]-流程控制语句
- php学习笔记(四)流程控制语句