bash函数的小技巧

  介绍

这篇文章主要为大家展示了“bash函数的小技巧”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“bash函数的小技巧”这篇文章吧。

 bash函数的小技巧”> <br/> </p> <p>关于bash函数,这里有一些您不知道的东西。通常当你写一个函数时,你会这样做:</p> <pre类= function  name  (), {   ,……   }

不是吗?我知道你会这么做,因为这是所有人写函数的方式。这就是我要说的。在bash中

 {…}

并不像在JavaScript或c中那样意味着“函数的主体”或“函数的范围”,它实际上是一个复合命令。你可以做各种稀奇古怪的事情,比如:

function  fileExists (),[[1美元,-f ]]

不需要那些花括号!者你可以这样做:

function  isEven (),((, 1美元%,2,==,0,))

这个函数是一个算术计算式。或者你可以这样做:

function  name  (), (   ,……   )

这将在子shell中生成函数,而不是在当前环境中执行。

或者您可以使用,如果情况,选择和。这里有一个例子:

function  sleep1  (), while :, do “@"美元;;,sleep  1;,做

这个函数将创建一个sleep1函数,该函数将永远每秒运行一个命令。您可以执行类似<代码> sleep1 df - h 这样的操作来监视磁盘的更改。

这些技巧不仅使您的代码更美观,还能够让您快速的写出单行bash程序,而且它们也非常有用。如果您需要为您的函数创建一个临时环境,并临时更改变量或壳选项,那么它将特别有用。

这是我在代码中找到的一个例子:

function  caseInsensitiveMatch  (), (   shopt  -s  nocasematch   ,……   )

在这里,函数caseInsensitiveMatch在一个子shell中执行,它能设置nocasematch选项,它的作用域就是这个函数。对于IFS和其他变量,您通常需要临时更改。你这样就不需要保存以前的值,然后恢复它们。

以上是“bash函数的小技巧”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

bash函数的小技巧