Я работаю с корневым каталогом и хочу печатать записи каталога, начинающиеся с заглавной буквы.
$ echo [A-Z]*
Applications Library Network System Users Volumes bin cores dev etc home installer.failurerequests net private sbin tmp usr var vm
Результат сбивает меня с толку, потому что я не ожидал, что
cores dev и т. Д. Home installer.failurerequests net private sbin tmp usr var vm
будет соответствовать моему шаблону.
Как мне написать шаблон глобуса, который соответствует только заглавным буквам?
Поэтому шаблон шарика [A-Z]
обычно не соответствует прописным буквам. Конкретно это расширяется согласно
сортирующая последовательность текущей локали и набор символов
Если Вы хотите файлы, запускающиеся с прописной буквы, можно использовать
echo [[:upper:]]*
или набор локаль явно
(LC_COLLATE=C; echo [A-Z]*)
или используйте удар globasciiranges
опция оболочки
(shopt -s globasciiranges; echo [A-Z]*)
Посмотрите Pattern matching
раздел man bash