Как преобразовать строчные буквы с ударением в заглавные? - Использование команды «tr»

Как преобразовать строчные буквы с ударением в заглавные? - Использование команды «tr»

Я пробовал с:

$ echo 'Ciência' | tr 'a-z' 'A-Z'
CIêNCIA

Но символ 'ê' не меняется, очевидно, потому что он акцентирован. Затем я попробовал с классами POSIX:

echo "Ciência" | tr '[:lower:]' '[:upper:]'
CIêNCIA

Но буква «ê» по-прежнему пишется строчной буквой.

Может ли кто-нибудь мне помочь?

решение1

Это можно сделать с помощью gawk:

echo "Ciência" | gawk '{print toupper($0);}'

(тоже perl, кто-нибудь обязательно укажет). В примере используется UTF-8, который явно не является частьюPOSIX-awk. Документация gawk упоминает эти проблемы. Например, mawk и bwk (one-true-awk) дают разные результаты:

+ echo Ciência
+ gawk {print toupper($0);}
CIÊNCIA
+ echo Ciência
+ mawk {print toupper($0);}
CIêNCIA
+ echo Ciência
+ one-true-awk {print toupper($0);}
CIêNCIA

Связанный контент