gpt4 book ai didi

linux - 使用 awk 在 bash 函数中使用命令输出变量时出错

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:59:40 24 4
gpt4 key购买 nike

我在尝试将命令的输出写入函数中定义的变量时遇到错误。

chk()
hostsum=$(md5sum /etc/hosts | awk -F" " '{print $1}')
chk

它告诉我一个语法错误:

./testchk.sh: Zeile 3: Syntaxfehler beim unerwarteten Wort hostsum=$(md5sum /etc/hosts | awk -F" " '{print $1}')' ./testchk.sh:
Zeile 3:
hostsum=$(md5sum /etc/hosts | awk -F" " '{print $1}')'

它在函数外工作,但不会因为函数添加了一些额外的引号。除了在函数之外使用它还有什么想法吗?

最佳答案

我认为你只需要添加大括号:

chk() { hostsum=$(md5sum /etc/hosts | awk -F" " '{print $1}') ; }

在这里对我来说很好用。 bash man page说一个函数必须包含一个复合命令,其中 { list ; } 就是一个例子。

关于linux - 使用 awk 在 bash 函数中使用命令输出变量时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8827857/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com