zsh - 变量赋值不起作用

zsh - 变量赋值不起作用

我在从 bash 函数改编为 zsh 函数的函数中有此行:

local info=( $(command df -P $fs | awk 'END{ print $2,$3,$5 }') )

每当我在函数中调用它时,我都会得到这个:

mydf:9:错误模式:信息=(712687280

但是当我从 shell 调用它时,我得到了预期的答案:

$ info=($(command df -P $fs | awk 'END{ print $2,$3,$5 }'))
$ echo $info                                                                                      
712687280 166242288 25%

我使用 zsh 已经 2 天了,所以我不太清楚是什么导致了这个问题。

答案1

将赋值与定义放在不同的行上local

local info
info=( $(command df -P $fs | awk 'END{ print $2,$3,$5 }') )

相关内容