Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1247468
  • 博文数量: 261
  • 博客积分: 4196
  • 博客等级: 上校
  • 技术积分: 3410
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-17 17:05
文章分类

全部博文(261)

文章存档

2018年(1)

2017年(22)

2016年(2)

2015年(8)

2014年(27)

2013年(40)

2012年(161)

分类: LINUX

2012-03-15 10:04:16

1.shell中的函数:

Shell中使用function关键字声明函数,可以将一组功能相关的代码封装组合成一个方法,以提高代码的复用性。

语法格式:function 函数名(){

                     函数体

                     return

}

函数调用:直接函数名即可调用。注意函数必须先声明定义,然后在使用。

例如:

#!/bin/bash

#function

function hello()

{

echo "Hello,today is `date`"

}

echo "now going to the function hello"

hello

echo "back from the function"

在sh中函数声明需是 name() {  }的形式。向函数中传递参数(注:传给shell中的参数和shll里面写的函数的参数,不是同一个东西。即shell中用的$1等,如果不传入进函数里,在函数中是不能用的。)

#!/bin/sh

MSG="helo"

func () {
MSG="$MSG $1!"
}

func "world"
echo $MSG

用function var1 var2将参数var1 var2传递给函数,

2.select语句
select语句是pdksh提供的一个独特的循环语句.他不同于前面介绍的循环语句.他不是
反复计算一个条件表达式,并依据表达式的值决定是否执行一组命令.select的功能是自动的
生成一个简单的文本菜单.
语法格式:
select menu [in list_of_items]
do
commands
done
含义:当执行一个select语句时,pdksh分别为每个列在list_of_items中的成员建立一个菜单
选项.list_of_items既可以是一个包含多个选项的变量,也可以是直接列在程序中的一组选项
.如果语句中没有提供list_of_items,select语句将使用位置变量作为list_of_items.
举例:
select menuitem in pick1 pick2 pick3
do
echo "are you sure you want to pick $menuitem"
read res                   ;接收用户的输入,并且将输入的值存放在特定变量里.
if [ $res=" y" -o $res=" Y"]
then
break                      ;用于退出while,for,select等循环语句
fi
done

运行效果:

[root@localhost ~]# ./test
1) pick1
2) pick2
3) pick3
#? 2
are you sure you want to pick pick2
y

阅读(2177) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~