`
天梯梦
  • 浏览: 13741237 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

Linux Shell脚本入门教程系列之(十五) Shell函数简介

 
阅读更多

本文是Linux Shell脚本系列教程的第(十五)篇,更多Linux Shell教程请看:Linux Shell脚本系列教程

上一篇之后,函数可以将一个复杂功能划分成若干模块,从而使程序结构更加清晰,代码重复利用率更高。

高级语言都支持函数,Shell也不例外。今天就为大家介绍下Shell中函数相关用法。

 

一、Shell函数的语法

因为函数是脚本类语言,在执行时是逐行执行的,因此,Shell 函数必须先定义后使用。

Shell 函数的定义格式如下:

[ function ] funname [()]
{
    command;
    [return int;]
}

 

说明:function 关键词是可选项,可加可不加。

大括号内饰函数体,最后是返回值,可以加【return】关键词来指定函数返回内容,如果不加,将以最后一条命令运行结果,作为返回值。 return后跟数值n(0-255)。

 

二、Shell函数使用举例

接下来我们还是通过例子来学习下Shell函数的运用。

示例1:

#!/bin/bash
# author:Linux大学
# url:www.linuxdaxue.com
#date:2016-06-01

demo(){
            echo "这是我的第一个 shell 函数!"
}
echo "-----函数开始执行-----"
demo
echo "-----函数执行完毕-----"

 

说明:demo是一个函数的定义,函数体只有一句:echo“这是我的第一个 shell 函数!“

然后通过函数名来调用函数。

 

程序输出:

-----函数开始执行-----
这是我的第一个 shell 函数!
-----函数执行完毕-----

 

这个例子并没有体现函数的入参等使用,接下来给大家介绍下Shell中函数的传参方法。

 

三、Shell函数参数处理

在Shell中,调用函数时可以向其传递参数。

在函数体内部,通过 $n 的形式来获取参数的值,例如,$1表示第一个参数,$2表示第二个参数,$0代表脚本本身。

 

Shell函数参数处理例子

示例2:

我们再看一个例子:

#!/bin/sh
#Author:Linux大学
#url:http://www.linuxdaxue.com
#date:2016-06-01
function fSum()
{
        echo "入参为:"$1,$2
        return $(($1+$2))
}
fSum 5 7
total=$(fSum 3 2)
echo "Return :"$total,$?

 

这个定义了一个计算参数和的函数,函数可以通过$1,$2这种形式来获取入参值,然后通过$(($1+$2))这种形式来将两值相加,并返回结果。

 

调用时,也可以通过括号的形式来调用,Shell会调用单括号里面的命令。 因此,我们可以将shell中函数,看作是定义一个新的命令,它是命令,因此 各个输入参数直接用 空格分隔。

输出:

入参为:5,7
Return :入参为:3,2,5

 

注意:

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

 

函数中用到的特殊字符

另外,还有几个特殊字符用来处理参数:

参数 说明
$# 传递到脚本的参数个数
$* 以一个单字符串显示所有向脚本传递的参数
$$ 脚本运行的当前进程ID号
$! 后台运行的最后一个进程的ID号
$@ 与$*相同,但是使用时加引号,并在引号中返回每个参数。
$- 显示Shell使用的当前选项,与set命令功能相同。
$? 显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。

好了,有关Shell函数的相关知识先为大家介绍到这里,Shell中的函数非常强大,在此不再展开讲,希望大家能够自己多多练习,熟练掌握。

 

更多Linux Shell教程请看:Linux Shell脚本系列教程

 

 

原文:Linux Shell系列教程之(十五) Shell函数简介

上一篇:Linux Shell脚本入门教程系列之(十四) Shell Select教程

下一篇:Linux Shell脚本入门教程系列之(十六) Shell输入输出重定向

本文转自:Linux Shell脚本入门教程系列之(十五) Shell函数简介

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    Linux Shell 脚本编程入门教程

    用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操作。在Linux GUI日益完善的今天,在系统管理等领域,Shell编程仍然起着不可忽视的作用。深入地了解和熟练地掌握Shell编程,是每一个Linux用户的...

    Linux_shell脚本入门教程.pdf

    ### Linux Shell脚本入门教程知识点概述 #### 一、Shell编程的重要性与应用场景 - **重要性**: 在Linux系统中,虽然存在多种图形界面工具,但Shell作为一种强大的编程语言,能够提供更加灵活的功能支持。Shell不仅...

    linux shell 脚本入门

    Linux Shell脚本是Linux系统中用于自动化任务的强大工具,它基于Bash或其他Shell解释器,允许用户编写一系列命令,以实现批处理、任务调度或任何需要自动化的工作流程。本PDF文档"shell-script-entry.pdf"提供了18页...

    Shell脚本学习教程PDF版

    Shell脚本,作为Linux/Unix系统中的编程工具,是一种强大的自动化任务执行手段。它基于Bourne shell或者其扩展版本,如bash(Bourne-Again SHell),提供了一种编写简单或复杂程序的方式,使得用户能够通过命令行...

    Linux下Shell从入门到精通完整版视频.zip

    1.Linux下Shell编程基础入门.mp4 2.Shell编程之变量及LAMP导航菜单编写.mp4 3.Shell编程之IF条件语句各种案例演练.mp4 4.使用if条件语句编写MySQL备份脚本.mp4 5.Shell编程之LAMP一键安装脚本实战.mp4 6.For循环及...

    shell脚本入门到精通教程

    这篇“Shell脚本入门到精通教程”旨在为初学者和网络自动化运维人员提供全面的学习资源,同时也适合那些希望提升网络系统管理技能的学生。 首先,我们需要了解Shell的基础知识。Shell是一种命令解释器,它作为用户...

    LINUX SHELL 脚本攻略

    Linux Shell脚本攻略是一本针对Linux操作系统下Shell脚本编写的指导书籍。Shell脚本是利用Shell编程语言来控制和自动化命令序列的脚本,常用于系统管理、服务器管理、自动化任务处理等领域。本书的第三版包含了全面...

    C语言中文网shell脚本教程

    通过这些教程,学习者可以全面了解Shell脚本编程的基础知识,掌握编写高效、可靠的Shell脚本的技巧,从而更好地管理和自动化Linux系统。每个HTML文件都包含了丰富的实例和实践指导,是提升Shell脚本技能的理想资源。

    Linux shell 脚本攻略

    Linux Shell脚本是Linux操作系统中一种强大的自动化工具,它允许用户通过编写脚本来执行一系列命令,实现系统管理和任务自动化。本书《Linux Shell脚本攻略》(第2版)深入浅出地介绍了Shell脚本的编写技巧和实战...

    Linux shell 脚本攻略源代码第二版

    在IT领域,Linux Shell脚本是系统管理员和开发者日常工作中不可或缺的工具,它允许用户通过命令行接口自动化执行一系列任务。《Linux shell 脚本攻略-第二版》是一本深受赞誉的书籍,旨在帮助读者深入理解并掌握...

    LinuxShell脚本编程实例

    Linux Shell脚本编程实例 Linux Shell脚本编程实例是指使用Linux Shell...Linux Shell脚本编程实例是Linux Shell脚本编程的基础,涵盖了 Linux Shell脚本编程的所有方面,包括变量、控制结构、函数、环境变量等等。

    《Linux shell脚本全面学习》pdf版电子书

    ### Linux Shell脚本全面学习知识点概述 #### 一、Linux脚本编写基础 **1.1 语法基本介绍** **1.1.1 开头** - **解释**: 每个Shell脚本都需要以 `#!/bin/sh` 开始,这行被称为shebang,用于指示系统如何执行此...

    Linux 在Shell脚本中使用函数实例详解

    Linux 在Shell脚本中使用函数实例详解 Shell的函数 Shell程序也支持函数。函数能完成一特定的功能,可以重复调用这个函数。 函数格式如下: 函数名() { 函数体 }  函数调用方式: 函数名 参数列表  实例:编写...

    Linux 命令与Shell 脚本编程pdf书籍

    《Linux命令行与Shell脚本编程大全》是一本专为Linux初学者编写的经典教材,旨在帮助读者深入理解和掌握Linux操作系统中的基本命令行操作以及Shell脚本编程技术。这本书全面覆盖了从基础到进阶的各种主题,对于想要...

    Linux Shell 脚本基础

    Linux Shell脚本基础是Linux系统管理员和开发者必备的技能之一,它允许用户通过编写脚本来自动化日常任务。本文将深入探讨Shell脚本的基础知识,包括基本语法、变量、控制结构、函数以及常用的内置命令。 首先,...

    shell脚本入门教程

    ### Shell脚本入门教程知识点详解 #### 一、Shell编程的重要性与应用场景 - **灵活性与自动化**:在Linux系统中,尽管存在丰富的图形界面工具,但Shell作为一种强大的命令行工具和编程语言,仍然具备无可替代的...

    linux shell脚本

    Linux Shell脚本是一种强大的自动化工具,它允许用户通过命令行接口执行一系列操作,极大地提高了工作效率。在Linux系统中,Shell脚本是用Bash(Bourne-Again SHell)或其他兼容的Shell编写的,例如KornShell (ksh) ...

    Shell 脚本语言入门

    ### Shell脚本语言入门:详解与实践 #### 引言 在IT领域,Shell脚本是一种强大而灵活的工具,广泛应用于系统管理、自动化任务、数据处理等方面。它基于Unix/Linux环境,允许用户通过一系列命令行指令来实现复杂的...

    linux shell脚本攻略源代码

    Linux Shell脚本是一种在Linux操作系统环境下执行的命令行脚本,它允许用户通过编写一系列的命令来自动化系统任务。Shell脚本是Linux环境中的强大工具,尤其对于系统管理员和开发者而言,能有效提高工作效率。本资源...

    Shell脚本-从入门到精通.ppt

    shell脚本是Linux操作系统中的一种编程语言,用于自动执行一系列命令。shell脚本文件是一个纯文本文件,可以使用任何文本编辑器编写,通常以.sh作为后缀名。 一、shell脚本的基本结构 shell脚本的基本结构包括: ...

Global site tag (gtag.js) - Google Analytics