Shell脚本之:函数

Shell 也支持函数。Shell函数必须先定义后使用。

函数的定义与调用

Shell 函数的定义格式如下:

function_name () {
    list of commands
    [ return value ]
}

函数返回值,可以显式增加return语句;如果不加,会将最后一条命令运行结果作为返回值。

调用函数只需要给出函数名,不需要加括号。下面给出Shell函数定义和调用的一个简单例子:

#!/bin/bash
# Define your function here
Hello () {
   echo "hello world"
}
# Invoke your function
Hello

再来看一个带有return语句的函数:

#!/bin/bash
funWithReturn(){
    echo "The function is to get the sum of two numbers..."
    echo -n "Input first number: "
    read aNum
    echo -n "Input another number: "
    read anotherNum
    echo "The two numbers are $aNum and $anotherNum !"
    return $(($aNum+$anotherNum))
}
funWithReturn
# Capture value returnd by last command
ret=$?
echo "The sum of two numbers is $ret !"

像删除变量一样,删除函数也可以使用 unset 命令,不过要加上 .f 选项

函数参数

在Shell中,调用函数时可以向其传递参数。在函数体内部,通过 $n 的形式来获取参数的值

#!/bin/bash
funWithParam(){
    echo "The value of the first parameter is $1 !"
    echo "The value of the second parameter is $2 !"
    echo "The value of the tenth parameter is $10 !"
    echo "The value of the tenth parameter is ${10} !"
    echo "The value of the eleventh parameter is ${11} !"
    echo "The amount of the parameters is $# !"  # 参数个数
    echo "The string of the parameters is $* !"  # 传递给函数的所有参数
}
funWithParam 1 2 3 4 5 6 7 8 9 34 73

注意,$10不能获取第十个参数,获取第十个参数需要${10}。当n>=10时,需要使用${n}来获取参数。

时间: 2024-10-12 03:24:40

Shell脚本之:函数的相关文章

Linux中的shell脚本编程——函数

概述: 本章节将总结while,for循环语句的特殊用法,在不同的场景当中,更能发挥其功能和价值.除此之外,还会介绍一种特殊的循环语句select语句,实现菜单的作用.最重要的是讲解shell脚本编程中函数的用法.这些内容都要熟练掌握. 一.循环语句的特殊用法: 1.while循环的特殊用法(遍历文件的每一行): □语法:while read line; do 循环体 done < /PATH/FROM/SOMEFILE □意义:依次读取/PATH/FROM/SOMEFILE文件中的每一行,且将

shell脚本的函数介绍和使用案例

#前言:今天我们来聊聊shell脚本中的函数知识,看一下函数的优势,执行过程和相关的使用案例,我们也来看一下shell和python的函数书写方式有什么不同 #简介 1.函数也具有别名类似的功能 2.函数是把程序里多次调用相同的代码部分定义成一份,然后给这份代码定义个名字,如果出现重复的就调用就行了 #函数的优势 1.把相同的程序段定义成函数,可以减少整个程序的代码量 2.可以让程序代码结构更清晰 3.增加程序的可读.易读性.以及管理性 4.可以实现程序功能模块化,不同的程序使用函数模块化 #语

shell脚本之函数的定义及使用

函数Function的使用 定义函数 1) 函数名称() { ... ... } 2) function 函数名称 { ... ... } 调用函数 函数名称 也可以通过位置变量的方式给函数传递参数 例子: 编写脚本,实现目录管理功能,要求使用函数 #!/bin/bash # createDir() { read -p "Enter directory: " dir if [ -d $dir ]; then echo "目录$dir存在" else mkdir -p

Shell脚本(函数,shell中的数组)

函数 函数就是把一段代码整理到一个小单元中,并给这个小单元起一个名字,当用到这段代码时直接调用这个小单元的名字即可. 格式:function f_name(){ command } 函数必须放在最前面,函数名可以自己定义. 案例一: [[email protected] shell]# vim fun.sh #!/bin/bash function inp() { echo $1 $2 $3 $10 ${10} ${11} $0 $# [$*] } inp 1 2 3 4 5 6 7 8 9 3

shell脚本 4 函数与正则

shell函数 shell中允许将一组命令集合或语句形成一段可用代码,这些代码块称为shell函数.给这段代码起个名字称为函数名,后续可以直接调用该段代码. 格式 func() {   #指定函数名 command    #函数体 } 实例1: #!/bin/bash func() { echo "This is a function." } func # bash test.sh This is a function. Shell 函数很简单,函数名后跟双括号,再跟双大括号.通过函数

shell脚本结合函数实现简单计算器功能

#!/bin/bashfunction tool_menu(){    echo "****************************************************"    echo "*                                                  *"    echo "*              calculation  tools                  *"   

shell脚本之函数的参数

#! /bin/bash echo use function hello() { echo how many parameters in the function:$#; echo the name of this function is $0; echo the first parameters is :$1; echo the second parameters is :$2; } hello "hello" "world" [[email protected]

在shell脚本中使用函数

转载请标明:http://www.cnblogs.com/winifred-tang94/ 对于在脚本中重复使用的功能模块,可以封装成为函数. shell脚本中函数的定义可以使用如下两种方式: a. 函数名() { ······· } b. function 函数名() { ·········· } eg. 结果为: 值得注意的是,如果判断相等哪里想用test指令的话,应该使用如下的格式:

Shell脚本编程入门到放弃

1 区分大小写 UNIX是区分大小写的,因此shell脚本也是区分大小写的 2 特殊字符 UNIX的某些字符都有特殊的意义或功能,如果它们不以其特殊的意义使用必须要进行转义(escaped). 为了转义它们需要用反斜杠或者单引号括起来. 3 shell shell(命令行解释器)是一个能够用来运行命令.程序和shell脚本的环境. 4 shell脚本 shell脚本就是命令的有机组合. shell脚本和函数都是解释型的,ASCII文本,不能被编译. 5 函数 函数的编写和脚本的编写类似,不同之处

linux学习之shell脚本 ------- shell函数

[本文是自己学习所做笔记,欢迎转载,但请注明出处:http://blog.csdn.net/jesson20121020] 今天来看一下Shell的函数. Shell函数 函数定义 shell允许将一组命令集或语句形成一个可用块,这些块称为Shell函数. 函数定义格式: 函数名(){ 命令1 -- } 或 function 函数名(){ -- } 函数可以放在同一个文件中作为一段代码,也可以放在只包含函数的单独文件中. 如下面的脚本就是一个只包含函数的单独文件. #!/bin/bash #fu