Скажем, у меня есть следующие файлы:
|-- bar `-- foo |-- type_A_1 |-- type_A_2 |-- type_B_1 |-- type_B_2 |-- type_B_xx |-- type_B_xx `-- something_else
Я думал, что следующая команда
print -l foo/*~{type_B*}
будет печатать все под, foo
кроме вещей, которые начинаются с, type_B
но это не так, вместо этого он печатает все под foo:
foo/type_A_1
foo/type_A_2
foo/type_B_1
foo/type_B_2
foo/type_B_xx
foo/something_else
Я тоже попробовал print -l foo/*~type_B
и получил то же самое.
Как работает подстановочный знак исключения ~
в Zsh?
foo/*~*/type_A*
работает? Второй*
расширяется до каждой папки в рабочем каталоге, или он достаточно умен, чтобы расширяться только доfoo
?