Опис тега maoyuu-maou-yuusha
В якості альтернативи extglob (хоча це дуже хороший відповідь і кожен повинен мати shopt -з extglob globstar
в їх .bashrc і), ви можете використовувати $GLOBIGNORE глобальної змінної. Припустимо, ви хочете зробити кожен файл, за винятком 'foo.txt" і "бар baz.txt':
GLOBIGNORE=foo.txt:'бар baz.txt'
...проте, це обернеться шкаралупи варіант dotglob
, що означає, що *
буде відповідати файли, що починаються з крапки (зазвичай прихований). Так що ви насправді потрібні дві команди:
GLOBIGNORE=foo.txt:'бар baz.txt'
shopt -у dotglob
Так як це глобальна змінна, вона буде впливати на кожен кульку можна використовувати до $GLOBSTAR не встановлена або шляхом виходу з системи або з
GLOBIGNORE=
Він також буде працювати тільки на буквальні рядка в змінну. Ви можете побачити, що я маю на увазі створення $GLOBIGNORE і дивлячись на різницю між цими командами:
функції printf '%з\п' *
функції printf '%з\п' ./*