zsh - 変数の割り当てが機能しない

zsh - 変数の割り当てが機能しない

bash 関数から zsh 関数に適応させている関数に次の行があります:

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

関数内でこれを呼び出すたびに、次の結果が返されます:

mydf:9: 不正なパターン: info=( 712687280

しかし、シェルから呼び出すと、期待どおりの答えが返されます。

$ 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 }') )

関連情報