在 Bash 中使用 lambda 表达式的典型用例是什么?

在 Bash 中使用 lambda 表达式的典型用例是什么?

这不是一个“需要解决的问题”,而是一个关于 Bash 教学法、文学以及教师之间的共同点的问题。

在 Bash 中使用匿名/未命名过程(“lambda 表达式”)的典型用例是什么?

答案1

匿名函数在 中可用zsh,它们提供了一种使用局部变量编写脚本部分的方法。但是,您不能将它们作为参数传递给其他函数,但是由于您可以将任意字符串传递给函数,因此您可以将姓名任何函数,然后调用它(bash如果您愿意,今天就可以这样做)。

匿名函数看起来zsh像这样:

() {
    local myvar

    # Some code using $myvar as a temporary variable,
    # setting up things and possibly assigning to global variables.

} argument list here

# myvar from the function no longer exists here

该函数在定义时被调用。

我在.zprofile文件中使用它来设置PATH变量并处理ssh-agentSSH 连接远程端的设置(这两件事都需要一些我不想保留的本地变量)。

手册zsh包含以下示例代码:

variable=outside
function {
  local variable=inside
  print "I am $variable with arguments $*"
} this and that
print "I am $variable"

....与输出

I am inside with arguments this and that
I am outside

相关内容