zsh - Variablenzuweisung funktioniert nicht

zsh - Variablenzuweisung funktioniert nicht

Ich habe diese Zeile in einer Funktion, die ich von einer Bash-Funktion in eine Zsh-Funktion anpasse:

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

Immer wenn ich es in der Funktion aufrufe, erhalte ich Folgendes:

mydf:9: ungültiges Muster: info=( 712687280

Aber wenn ich es von der Shell aus aufrufe, erhalte ich die erwartete Antwort:

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

Ich benutze zsh seit zwei Tagen und weiß daher nicht so recht, was die Ursache des Problems ist.

Antwort1

Setzen Sie die Zuweisung in eine von der localDefinition getrennte Zeile:

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

verwandte Informationen