首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Shell编程规范-关于函数

关于函数

函数的写法

函数定义的形式是

使用关键字 显示定义的函数为 public 的函数,可以供 外部脚本以 的形式调用

未使用关键字 显示定义的函数为 privat 的函数, 仅供本脚本内部调用,注意这种privat是人为规定的,并不是shell的语法,不推荐以 的形式调用,注意是不推荐而不是不能。

本shell规约这样做的目的就在于使脚本具有一定的封装性,看到 修饰的就知道这个函数能被外部调用, 没有被修饰的函数就仅供内部调用。你就知道如果你修改了改函数的影响范围. 如果是 被function 修饰的函数, 修改后可能影响到外部调用他的脚本, 而修改未被function修饰的函数的时候,仅仅影响本文件中其他函数。

如 core.sh 脚本内容如下是

则我可以使用 的形式调用 函数,但就不推荐使用 的形式使用 和 函数,注意是不推荐不是不能。

如何使用脚本单独调用函数中的某个函数

使用如上的框架,只需要在 两个 之间写函数,就可以使用 的形式调用函数了。

使用 或者 就可以查看这个脚本中的函数说明了。

如果使用Intellij IDEA 也会提示

在函数内部首先使用有意义的变量名接受参数,然后在使用这些变量进行操作,禁止直接操作1,

1,

2 等,除非这些变量只用一次

函数的注释

函数类型的概念是从函数编程语言中的概念偷过来的,shell函数的函数类型指的是函数的输入到函数的输入的映射关系

main函数的函数类型是 []

参数的描述是从 Scala 语言中偷过来, 先是参数名称 然后是参数类型 中间用:分隔

对于main函数的注释来说, 顶格写,后面紧跟一个空格,其实这样写是遵循的markdown的语法, 后面再跟一个空格,然后是 []

对于log_info 也是一样 不过 最后的函数类型是 []

关于函数的返回值,我理解的函数的返回值有两种形式,一种是显示的return一种是隐式的echo

以下是几种常见的写法

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180303G059MK00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券