Вы неправильно используете символы глобуса ?
, используемые оболочкой, и конструкции регулярного выражения ^
, $
. Цикл for
в вашем примере может , а не подвергаться совпадению с регулярным выражением, чтобы исключить предоставленный каталог, поскольку он подвергается только расширению пути (aka. Glob extension)
Если вы не дадите знать оболочке для обработки ^
и $
как особенных, включив расширенные параметры glob extglob
в bash
и extendedglob
в zsh
, вы не сможете достичь того, что хотели сделать.
Так что вам, вероятно, просто нужно
setopt extendedglob
print -rl ^BigDir*
означает печать что угодно , кроме имен файлов, совпадающих с BigDir
.