Я не могу получить grep до с учетом регистра с этим шаблоном
$ grep 'T[A-Z]' test.txt
The Quick Brown Fox Jumps Over The Lazy Dog
THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
Ответ 1
Используйте кавычки, чтобы предотвратить сопоставление шаблона как файла glob файла в файловой системе с помощью оболочки. ''
Использовать именованный класс символов, чтобы гарантировать совпадение с регистром. [[:lower:]]
Используйте квантификатор для совпадения более чем одного символа. \+
Используйте якорь (ы), чтобы убедиться, что совпадение установлено правильно. ^
grep '^T[[:upper:]]\+' test.txt
Причина, по которой [A-Z] не работает для вас, заключается в том, что способ, которым вы пользуетесь, используется в вашей системе, этот шаблон также содержит строчные буквы.
Ответ 2
Вы можете установить значение LANG:
$ LANG=C grep 'T[A-Z]' test.txt
THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG