加入收藏 | 设为首页 | 会员中心 | 我要投稿 应用网_丽江站长网 (http://www.0888zz.com/)- 科技、建站、数据工具、云上网络、机器学习!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

如何在Linux Shell编程中定义和使用函数

发布时间:2018-09-10 04:39:46 所属栏目:Windows 来源:佚名
导读:副标题#e# 函数是一段可复用的代码。我们通常把重复的代码放进函数中并且在不同的地方去调用它。库是函数的集合。我们可以在库中定义经常使用的函数,这样其它脚本便可以不再重复代码而使用这些函数。 本文我们将讨论诸多关于函数的内容和一些使用技巧。为

执行完,就会生成如下信息:

  1. [ 2018-08-16 19:56:34 ]: This is sample log message 

显示系统信息

让我们创建一个显示 GNU/Linux 信息的函数

  1. function system_info {
  2. echo "### OS information ###"
  3. lsb_release -a
  4.  
  5. echo
  6. echo "### Processor information ###"
  7. processor=`grep -wc "processor" /proc/cpuinfo`
  8. model=`grep -w "model name" /proc/cpuinfo  | awk -F: '{print $2}'`
  9. echo "Processor = $processor"
  10. echo "Model     = $model"
  11.  
  12. echo
  13. echo "### Memory information ###"
  14. total=`grep -w "MemTotal" /proc/meminfo | awk '{print $2}'`
  15. free=`grep -w "MemFree" /proc/meminfo | awk '{print $2}'`
  16. echo "Total memory: $total kB"
  17. echo "Free memory : $free kB"
  18. }

执行完后会生成以下信息:

  1. ### OS information ###
  2. No LSB modules are available.
  3. Distributor ID:           Ubuntu
  4. Description:   Ubuntu 18.04.1 LTS
  5. Release:         18.04
  6. Codename:    bionic
  7.  
  8. ### Processor information ###
  9. Processor = 1
  10. Model     =  Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz
  11.  
  12. ### Memory information ###
  13. Total memory: 4015648 kB
  14. Free memory : 2915428 kB 

在当前目录下查找文件或者目录

下面的函数从当前目录下查找文件或者目录:

  1. function search {
  2. find . -name $1
  3. }

让我们使用下面的命令查找 dir4 这个目录:

  1. $ search dir4

当你执行完命令后,将会产生如下输出:

  1. ./dir1/dir2/dir3/dir4 

数字时钟

下面的函数在终端里创建了一个简单的数字时钟:

  1. function digital_clock {
  2. clear
  3. while [ 1 ]
  4. do
  5. date +'%T'
  6. sleep 1
  7. clear
  8. done
  9. } 

函数库

库是函数的集合。将函数定义在文件里并在当前环境中导入那个文件,这样可以创建函数库。

假设我们已经在 utils.sh 中定义好了所有函数,接着在当前的环境下使用下面的命令导入函数:

  1. $ source utils.sh

之后你就可以像调用其它 Bash 命令那样执行库中任何的函数了。

总结

本文我们讨论了诸多可以提升效率的实用技巧。我希望这篇文章能够启发你去创造自己的技巧。

【编辑推荐】

  1. Linux 内核版本那么多,你应该选择哪个稳定版本?
  2. 对比Ubuntu 18.04和Fedora 28
  3. Linux 27 周年,这 27 件相关的有趣事实你可能不知道
  4. 6个简单的方式来查看Linux中的用户名和其它信息
  5. 如何在Ubuntu中切换多个PHP版本
【责任编辑:庞桂玉 TEL:(010)68476606】
点赞 0

(编辑:应用网_丽江站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读