Bash - 如何在终端中用多行定义函数?

Bash - 如何在终端中用多行定义函数?

如何在终端中通过多行定义函数?

# this doesn't work
function my_func { \
  echo "number 5" \
}

非常基本。还是很烦人。

答案1

您不需要\在此处继续行。尝试:

function my_func {
  echo "number 5" 
}

function关键字不是必需的,您可以使用funcname () {...}

my_func() {
  echo "number 5" 
}

顺便说一句,它不起作用的原因是反斜杠使函数定义全部为一行,而单行函数定义需要以;bash 中的 a 结尾。

例如这失败了:

my_func () { echo "number 5" }

这有效:

my_func () { echo "number 5" ; }

就像这样:

function my_func { \
  echo "number 5" \
  ; \
}

相关内容