1、函数介绍

为了避免代码的重复使用,我们一般通过函数编写代码块,而这一个代码块用来实现某种功能;且这个功能在后面的代码中会重复使用。

2、函数的语法格式:

 [ function ] 函数名 [ ( ) ]{
函数体
[ return … ]
}

3、函数的调用

调用函数:函数名

在哪里调用,函数体中的命令就在那里执行

函数要写在调用前才可以被调用

4、函数返回值

当函数中指定了判断语句的时候,我们默认要一个返回结果是错误的,但最近一条命令却是正确的,这时候我们就需要通过return 返回一个错误返回码

函数结束的时候,我们需要指定一个return返回码

5、函数接受参数

函数 变量

注意:在函数接受传参是,不会使用外部传参,而是以脚本内部的传参为准。

6、函数的变量

a) 本地变量:

  定义格式:local 变量名=xxx 例如:local i=1

  本地变量只在本函数内生效

b) 局部变量:

  定义格式:例如:i=1

  脚本内部的变量

练习:

i=
Test(){
  local i=
  let i++
  echo “局部变量: $i”
}
Test
echo “本地变量 $i”

c) 环境变量

  在整个Linux系统的bash中生效

d) 扩展:关于脚本执行问题

  bash 方式执行:#!/bin/ash ------在当前shell的子shell中执行

  全路径执行或者相对路径执行方式: 需要chmod +x 授执行权限

  source 脚本文件 或者 ./脚本文件 -----在当前shell执行

最新文章

  1. python基础05 if选择
  2. 电脑莫名其妙的被装上了流氓软件DNSunlocker的解决办法
  3. 【转】HashMap、TreeMap、Hashtable、HashSet和ConcurrentHashMap区别
  4. 远程联机linux主机
  5. BackTrack 5 开启SSHD服务
  6. 【BZOJ 3188】【Coci 2011】Upit Splay模板题
  7. 动态修改 C 语言函数的实现
  8. LoadRunner录制回放脚本RecContentType=application/json报错
  9. Oracle EBS-SQL (AR-1):检查应收收款发生额
  10. every();some();filter();map();forEach()各自区别:
  11. Bootstrap+Vue.js 练习入门一
  12. Spring中加载xml配置文件的常用的几种方式
  13. 网络请求 selenium
  14. CNN中feature map、卷积核、卷积核个数、filter、channel的概念解释,以及CNN 学习过程中卷积核更新的理解
  15. 如何在Ruby中编写微服务?
  16. Asp.net中web.config配置文件详解(二)
  17. 贝叶斯优化(Bayesian Optimization)深入理解
  18. 2017-2018-2 1723《程序设计与数据结构》第八周作业 & 实验二 & 第一周结对编程 总结
  19. LeetCode Best Time to Buy and Sell Stock with Transaction Fee
  20. DCL实现多线程安全的高性能懒汉模式

热门文章

  1. Vue v-if以及 v-else 的使用
  2. Linux小记 -- apt-get install build-essential和yum groupinstall "Development Tools"
  3. JDK源码--HashMap(之resize)
  4. Linux高级调试与优化——gdb调试命令
  5. [Python]ctypes+struct实现类c的结构化数据串行处理
  6. JS - defer 和 async
  7. vue仿阿里云后台管理(附加阿里巴巴图标使用)
  8. IDEA中解决 git pull 冲突
  9. 第二次课程总结&学习总结
  10. Ubuntu 16.04简单配置备忘录