shell种的函数
函数有两个优势:
1. 将处理相同事情的一系列的调用的统一,代码利用率高,
2. 复杂的功能和模块拆分,便于代码的可读性
#简单函数1
function1(){
echo "function1"
}
#简单函数2
function function2(){
echo "function function2"
}
#记得加上,要不然就是注释了
function1
function2
#带返回值的函数
returnFunction(){
return `expr $1 + $2`
}
returnFunction $1 $2
rv=$?
echo "reture value is $rv"
#在来一个大家都用的例子
funWithReturn(){
echo "get sum value of two number"
echo -n "input first number:"
read num1
echo -n "input second number"
read num2
echo "your input numbers are $num1 and $num2"
return "$(($num1+$num2))"
}
funWithReturn
rv=$?
echo "function funWithReturn return $rv"
#函数之间的调用
call_f(){
echo "this is function1"
call_f2
}
call_f2(){
echo "this is function2"
}
call_f
#删除方法
unset -f call_f2
call_f
运行命令sh function.sh 1 2 后的结果
function1
function function2
reture value is 3
get sum value of two number
input first number:3
input second number3
your input numbers are 3 and 3
function funWithReturn return 6
this is function1
this is function2
this is function1
function.sh: line 44: call_f2: command not found
函数中参数的传递
$# 传递给函数的参数个数。
$* 显示所有传递给函数的参数。
$@ 与$*相同,但是略有区别,在某些操作中该操作会拆分
$? 函数的返回值。
具体的脚本
#函数中传递参数
funWithParam(){
echo "paragram 1 $1"
echo "paragram 2 $2"
echo "paragram 3 $3"
echo "paragram 4 $4"
echo "paragram 5 $5"
echo "paragram number $#"
echo "paragram all $@"
}
funWithParam 1 2 3 4 5 6 7
执行后的结果
paragram 1 1
paragram 2 2
paragram 3 3
paragram 4 4
paragram 5 5
paragram number 7
paragram all 1 2 3 4 5 6 7
分享到:
相关推荐
Shell脚本编程是一种在Linux和类Unix操作系统中广泛使用的自动化工具,它允许用户通过命令行接口执行一系列操作,实现批处理、系统管理任务或者复杂的任务自动化。本书《Shell脚本编程诀窍——适用于Linux、Bash等》...
在IT行业中,shell脚本是Linux或Unix系统中不可或缺的一部分,它...在实际工作中,结合标签"源码"和"工具",我们还可以考虑将这些模块化的shell脚本打包成可配置的工具,提供给团队成员或社区使用,从而提高工作效率。
本篇笔记主要探讨了Shell脚本中的函数定义、参数传递、标准输入/输出(IO)、脚本调试以及一些常用的内置命令。 1. **函数定义**: Shell函数是一组命令的集合,它们作为一个整体在脚本中被调用。定义函数的基本...
这两个PDF合集——"100个Shell脚本经典案例"和"250个拿来即用shell脚本",为初学者和经验丰富的IT从业者提供了丰富的学习材料,帮助他们掌握和提升Shell脚本编写技能。 首先,让我们深入了解一下Shell脚本的基本...
《Shell脚本专家指南》是一本专为提升Unix和...两本PDF版本的书籍——中文版《大家网》Shell脚本专家指南和英文版《Apress》Expert Shell Scripting,为不同语言需求的读者提供了便利,确保理解和应用这些知识无障碍。
在本Linux+Shell编程课程设计中,我们将深入探讨如何利用Shell脚本来实现Linux系统的用户管理。Shell编程是Linux系统中的重要一环,它提供了一种简单而强大的方式来自动化日常的系统任务,包括用户账户的创建、修改...
本文将深入探讨两个强大的文本处理工具——`sed`和`awk`,它们经常被用于Shell脚本中,以实现对文本文件的高效处理。`sed`(流编辑器)和`awk`(一种编程语言)都是数据分析和文本转换的强大工具,尤其在处理日志...
Shell脚本是包含一系列命令的文本文件,可以被Shell执行。在脚本中,可以使用控制结构(如if-else,for循环)和函数,实现自动化任务。执行脚本时,会创建一个新的子Shell来运行脚本内的命令。 5. **进程 (Process...
**Shell基础——Shell入门资料** 在信息技术领域,Linux操作系统因其开放源码、稳定性和灵活性而备受推崇。Linux的用户界面主要是命令行界面,也就是我们常说的终端或控制台,而Shell则是用户与操作系统交互的接口...
Shell脚本的强大之处在于能够调用各种Unix命令,实现文件操作、文本处理、系统管理等复杂任务。以下列举了一些常用的Unix命令: - `echo`:用于输出文本到标准输出设备(屏幕)。 - `ls`:列出当前目录下的文件和子...
标题中的“关于shell脚本”指的是Unix/Linux操作系统中用于自动化任务和系统管理的脚本语言——Shell脚本。Shell脚本是一种解释型编程语言,它允许用户通过命令行界面(CLI)来执行一系列命令,而无需手动输入每个...
- **source (.) 命令**:使脚本中的变量和函数对当前 Shell 生效,相当于 C 语言中的 `#include` 语句。 - **export 命令**:将变量导出到子 Shell 环境中,使子 Shell 也能访问这些变量。 - **unset 命令**:删除...
**Shell脚本合集——深度解析与应用** 在IT运维领域,Shell脚本扮演着至关重要的角色,尤其在Linux系统中。"shell脚本合集--大量注释"是一个宝贵的资源,它包含了50多个用于一键部署服务的脚本,如Nginx、Redis集群...
假设我们需要编写一个简单的Shell脚本来统计目录下的文件数量: ```bash #!/bin/bash # 定义一个函数来统计文件数量 count_files() { local dir="$1" # 目录作为参数 local file_count=$(ls "$dir" | wc -l) # ...
本文将深入探讨标题"shell_ip_orangewgz_linux_shell_shell编程_shell脚本_"所提及的利用Shell编写判断IP地址合法性的脚本这一主题。我们将围绕Linux Shell、Shell脚本、shell编程以及如何在orangewgz Linux发行版上...
这个例子展示了如何使用shell脚本来实现用户交互和调用其他命令进行具体操作。 - `cat -n ULIB`:显示ULIB脚本的行号,便于阅读和理解程序结构。 - `BOLD`和`NORMAL`变量:保存终端的粗体和正常显示的控制序列,...
6. **函数定义**:在Shell脚本中定义和调用函数,提高代码复用性和可读性。 7. **数组**:在Bash中处理数组,存储和操作多值数据。 8. **错误处理**:如何捕获和处理脚本运行中的错误,使用set命令来设置脚本的...
本文档介绍了一个用于采集IBM AIX系统硬件配置信息的完整shell脚本——V2.1版。 #### 二、脚本功能与作用 此脚本的主要功能在于全面采集AIX系统的硬件配置信息,包括但不限于主机型号、序列号、CPU信息、内存大小、...
7. **Shell脚本编写**:掌握编写Shell脚本的基本语法,包括注释、变量声明、函数定义、脚本执行权限等。 8. **数组和通配符**:了解如何在Shell中使用数组,以及如何利用通配符(*、?)进行文件匹配。 9. **错误...
4. **函数和别名**:Shell脚本可以定义函数来封装重复的命令序列,通过别名可以简化常用命令的输入,提高工作效率。 5. **错误处理和调试**:理解Shell脚本中的错误处理机制,如`set -e`用于使脚本在遇到错误时立即...