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 local
Definition getrennte Zeile:
local info
info=( $(command df -P $fs | awk 'END{ print $2,$3,$5 }') )