Это примерно Zsh 5.5.1.
Скажем, у меня есть шаблон glob, который расширяется до одного файла, и я хотел бы назначить этот файл переменной. Это работает:
# N: No error if no files match. D: Match dot files. Y1: Expand to exactly one entry.
myfile=(*(NDY1))
и echo $myfile
покажет файл (или каталог). Но этот не работает:
myfile=*(NDY1)
В последнем случае echo $myfile
содержит шаблон, то есть *(NDY1)
.
Конечно, я мог бы сделать несколько дешевых трюков, таких как создание chilprocess через
myfile=$(echo *(NDY1))
но есть ли способ выполнить задание без таких уловок?