Bash:不需要调用的类似函数的结构?

用户9303970

我需要某种类似于Bash函数但不是函数的数据结构。一种按上下文组织命令的命名结构,该结构还应允许前导制表符。

当您的文件具有20个Bash函数但不需要20行函数调用时,这很好。

比较:

重击功能:

x() {
    echo "x"
}
x

我寻求的数据结构:

context {
    echo "x"
}

我在此类数据单元中组织命令的方式与在不使用参数括号()和不进行函数调用的情况下进行组织的方式类似

这种结构的名称是什么,您将如何做?

笔记

  • 与函数一样,结构的名称应始终位于同一行之前。

  • 这里的文档不是解决方案,在这种情况下,我希望通过语法实现一些最小化。

库萨兰达

这称为复合命令,语法为

{ compound-list; }

(这是复合命令示例,诸如for循环等其他内容也是复合命令)

例如:

{
    echo 'hello'
    echo 'world'
}

;,如果有在决赛前不换行只需要}

{ echo 'hello'; echo 'world'; }

就像功能一样,{ ...; }构造中的命令在当前环境中执行

POSIX标准的复合命令描述中提供了有关此问题的更多信息

没有理由(或可能性)将这些部分命名为,无论如何命名该部分或多或少都等同于创建shell函数。此外,仅在以后要引用复合命令时才需要对复合命令进行命名,这就是函数的用途。

显然可以使用以下注释:

# my hello world thing
{
    echo 'hello'; echo 'world'
}

以类似的方式,子外壳可以与

(
    echo 'hello'
    echo 'world'
)

这在当前shell的子环境中执行,并且对变量等的更改将不会反映在当前shell中。

通用语法是

( compound-list )

在这里,没有必要作最后;)


出于好奇,shell函数可以(...)代替{...;}在本地环境中执行其代码:

helloworld () (
    echo 'hello'
    echo 'world'
)

这对于了解是否sh使用不支持局部变量(localtypesetin bash)并且不需要修改脚本环境语言编写函数可能很有用

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

调用函数中不需要“Nothing” - Kotlin

来自分类PHP

不需要调用mysqli函数来插入值吗?

来自分类Dev

调用可操纵ostream的函数不需要括号。C ++

来自分类Dev

不需要的onItemSelected调用

来自分类Dev

不需要遍历的`<<%〜`类似物

来自分类Dev

构建后不需要的 _posts 结构

来自分类Dev

为什么类需要默认构造函数,而结构却不需要?

来自分类Dev

不需要时调用Edittext onFocusChangeListener

来自分类Dev

为什么内联函数内部调用的函数不需要定义?

来自分类Dev

Bash脚本创建不需要的文件

来自分类Dev

函数返回不需要的多个值

来自分类Dev

子类不需要父构造函数

来自分类Dev

D:不需要的匿名函数属性

来自分类Dev

函数返回不需要的数据

来自分类Dev

不需要 Lambda 函数吗?

来自分类Dev

bash:在脚本末尾推送后是否不需要调用popd?

来自分类Dev

为什么C ++字符串不需要std :: forward来调用所需的函数?

来自分类Dev

为什么调用`lower_bound`函数不需要`std`前缀?

来自分类Dev

Java 不需要的侦听器调用和函数参数倒置

来自分类Dev

Selenium.click()无法正常工作,而是正在调用不需要的函数

来自分类Dev

为什么带参数的函数在调用时不需要 (args)?

来自分类Dev

有人告诉我,有时不需要“()”就可以调用不需要返回的函数,对吗?

来自分类Dev

为什么`Self`在编译时需要恒定大小来调用自由函数,而等效特征函数却不需要?

来自分类Dev

不需要分配结构类型的out参数

来自分类Dev

不需要的popToRootViewController

来自分类Dev

不需要SelectFieldWidget

来自分类Dev

“不需要”功能

来自分类Dev

不需要铸造

来自分类Java

为什么调用不需要类的进口的方法?

Related 相关文章

热门标签

归档