Linux-Shell脚本编程-学习-8-函数

简介: 在这章往后的学习中,我讲尽可能详细的讲书中讲到的都记录到这里,以便以后方便查看。

什么是函数,函数就是一段代码,这段代码可以在我们需要的位置调用,那么这段代码就叫做函数。



在Shell中,定义一个函数有两种方法。


1. 使用关键字 function


function name


{

}



#!/bin/bash


function func1

{

       echo " this is a function"


}


count=1

while [ $count -le 5 ]

do

       func1

       count=$[$count +1 ]

done

echo " the loop end"


这种方式有种Shell 的感觉,那么第二种就有一种我们普通常见的函数的感觉了



name()


{

}



#!/bin/bash


function func1

{

       echo " this is a function"


}

func2()

{

       echo " this is the function two"

}



count=1

while [ $count -le 5 ]

do

       func1

       func2

       count=$[$count +1 ]

done

echo " the loop end"


这里在定义函数的时候要注意,如果我们在定义函数前使用了函数。那么就会提示我们找不到这个命令了




#!/bin/bash


function func1

{

       echo " this is a function"


}



count=1

while [ $count -le 5 ]

do

       func1

       func2

       count=$[$count +1 ]

done

func2()

{

       echo " this is the function two"

}

echo " the loop end"

如果是这样的话,那么func2就会报错了

image.png


#!/bin/bash


function func1

{

       echo " this is a function"


}



func1()

{

       echo " this is the recover function"

}



count=1

while [ $count -le 5 ]

do

       func1

       count=$[$count +1 ]

done

echo " the loop end"


image.png

image.png

image.png

这样,我们的函数1就会被覆盖,所在Shell脚本中定义函数的时候一定要注意名字的唯一性



和我们普通编程一样,Shell脚本中的函数也可以有返回值,bash shell会把函数当做一个小型的脚本,运行结束时会返回一个退出状态码。有三种不同的方法可以来为函数生成退出状态码


1. 使用默认的退出状态码


默认的状态码是函数中最后一条命令返回的退出状态码。在函数结束后,使用标准的$?变量来决定函数的退出状态码




#!/bin/bash


function func1

{

       echo " this is a function"


}



func1()

{

       echo " this is the recover function"

}



count=1

while [ $count -le 5 ]

do

       func1

       echo " the function exit status is: " $?

       count=$[$count +1 ]

done

echo " the loop end"

image.png

2. 使用return来返回



#!/bin/bash


function func1

{

       value=88

       echo " this is a function"

       return $value

}


:<

func1()

{

       echo " this is the recover function"

}

!


count=1

while [ $count -le 5 ]

do

       func1

       echo " the function exit status is: " $?

       count=$[$count +1 ]

done

echo " the loop end"

image.png

不过这个的不好支持就在于这里返回的状态码只能是0-255

 

要向返自己的内容,就需要用到第三种方式

文本输出 echo

这里就不哔哔了,今天先到这。等有时间在看

 

后面是在函数中使用变量了

 



目录
相关文章
|
1月前
|
Linux 编译器 开发工具
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
【Linux快速入门(三)】Linux与ROS学习之编译基础(Cmake编译)
|
1月前
|
存储 安全 Linux
|
5天前
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
45 13
|
1月前
|
Linux Shell 数据安全/隐私保护
|
1月前
|
Shell Linux 测试技术
6种方法打造出色的Shell脚本
6种方法打造出色的Shell脚本
67 2
6种方法打造出色的Shell脚本
|
1月前
|
XML JSON 监控
Shell脚本要点和难点以及具体应用和优缺点介绍
Shell脚本在系统管理和自动化任务中扮演着重要角色。尽管存在调试困难、可读性差等问题,但其简洁高效、易于学习和强大的功能使其在许多场景中不可或缺。通过掌握Shell脚本的基本语法、常用命令和函数,并了解其优缺点,开发者可以编写出高效的脚本来完成各种任务,提高工作效率。希望本文能为您在Shell脚本编写和应用中提供有价值的参考和指导。
62 1
|
1月前
|
Ubuntu Shell 开发工具
ubuntu/debian shell 脚本自动配置 gitea git 仓库
这是一个自动配置 Gitea Git 仓库的 Shell 脚本,支持 Ubuntu 20+ 和 Debian 12+ 系统。脚本会创建必要的目录、下载并安装 Gitea,创建 Gitea 用户和服务,确保 Gitea 在系统启动时自动运行。用户可以选择从官方或小绿叶技术博客下载安装包。
51 2
|
1月前
|
Ubuntu Linux Shell
Linux 系统中的代码类型或脚本类型内容
在 Linux 系统中,代码类型多样,包括 Shell 脚本、配置文件、网络配置、命令行工具和 Cron 定时任务。这些代码类型广泛应用于系统管理、自动化操作、网络配置和定期任务,掌握它们能显著提高系统管理和开发的效率。
|
1月前
|
运维 监控 Shell
深入理解Linux系统下的Shell脚本编程
【10月更文挑战第24天】本文将深入浅出地介绍Linux系统中Shell脚本的基础知识和实用技巧,帮助读者从零开始学习编写Shell脚本。通过本文的学习,你将能够掌握Shell脚本的基本语法、变量使用、流程控制以及函数定义等核心概念,并学会如何将这些知识应用于实际问题解决中。文章还将展示几个实用的Shell脚本例子,以加深对知识点的理解和应用。无论你是运维人员还是软件开发者,这篇文章都将为你提供强大的Linux自动化工具。
|
2月前
|
Shell
一个用于添加/删除定时任务的shell脚本
一个用于添加/删除定时任务的shell脚本
114 1