Перевод с учетом локали
Добавление знака доллара (‘$’) перед строкой в двойных кавычках, например $"hello, world", приводит к переводу строки в соответствии с текущей локалью. Инфраструктура gettext выполняет поиск и перевод, используя переменные оболочки LC_MESSAGES, TEXTDOMAINDIR и TEXTDOMAIN, как описано ниже. Дополнительные сведения, не рассматриваемые здесь, см. в документации gettext. Если текущая локаль — C или POSIX, если переводы отсутствуют или если строка не переведена, знак доллара игнорируется, а строка обрабатывается как заключенная в двойные кавычки, как описано выше. Поскольку это разновидность заключения в двойные кавычки, по умолчанию строка остается заключенной в двойные кавычки независимо от того, была ли она переведена и заменена. Если параметр noexpand_translation включен с помощью встроенной команды shopt (см. раздел Встроенная команда shopt), переведенные строки заключаются в одинарные кавычки вместо двойных.
В этом разделе кратко описано, как использовать gettext для создания переводов строк в сценарии оболочки с именем scriptname. Дополнительные сведения приведены в документации gettext.
Copyright © 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
Licensed under the GNU Free Documentation License.
https://www.gnu.org/software/bash/manual/html_node/Locale-Translation.html