По умолчанию Терминал устанавливает переменные среды локали в соответствии с выбранным в данный момент языком и форматами времени / даты / числа, которые использует Терминал, которые выбираются через
Системные настройки> Язык и текст
(Это имя на Lion. В более ранних системах точное имя панели настроек может отличаться.)
Временное решение - перетащить английский в верхнюю часть списка языков, затем открыть терминал, а затем переместить литовский обратно в верхнюю. Тогда только терминал будет на английском. Тем не менее, он будет сброшен на литовский, если вы выйдите и перезапустите терминал.
Постоянный подход состоит в том, чтобы сказать Терминалу не устанавливать локальные переменные среды, отключив
Терминал> Настройки> Настройки> [профиль]> Дополнительно> Задать переменные среды локали при запуске
Тогда языковой стандарт по умолчанию будет «C» без указания языка, а большинство программ по умолчанию будет использовать английский.
Обратите внимание, что отключение этого означает, что некоторые программы не будут знать, какой терминал использует кодировку символов, и будут предполагать, что это только ASCII или ISO-Latin-1. Поэтому, если Терминал использует UTF-8 (по умолчанию), эти программы могут работать или не работать так, как нужно.
Если это главным образом wget
, я рекомендую вам сделать копию профиля настроек по умолчанию, отключить настройку локали в вашем пользовательском профиле и использовать этот профиль только при использовании wget
, чтобы вы могли продолжать использовать UTF-8 с полной поддержкой при использовании других программ, используя настройки по умолчанию.
Как уже упоминали другие, вы также можете переопределить начальные настройки локали, предоставленные терминалом, в сценарии запуска оболочки. Для zsh поместите его в ~ / .zshrc. Для bash используйте ~ / .bashrc (а если у вас его еще нет, создайте ~ / .bash_profile, который запускает ~ / .bashrc).
См. X-man-page: // 1 / locale для получения дополнительной информации о каждом из значений среды локали.
Однако, если вы просто unset LANG
или установите его в «C», это обычно применяется ко всем вашим оболочкам и программам, в то время как большую часть времени вы, вероятно, захотите использовать UTF-8 и в терминале установить переменные языкового стандарта для соответствия, чтобы получить высшую степень сотрудничества, верности и функциональности.
Поэтому, если вы собираетесь пойти по этому пути, я предлагаю вам написать код для редактирования, а не замены начальных значений, чтобы вы сохранили информацию о кодировке («UTF-8») и просто принудительно переключили язык на английский, вместо того, чтобы устанавливать переменные в «C».
Например, это работает в zsh и bash:
# Replace Lithuanian with English
export LANG=${LANG/lt_LT/en_US}
Когда LANG="lt_LT.UTF-8"
это изменит его на LANG="en_US.UTF-8"
. У меня нет wget
возможности проверить это, но этого должно быть достаточно.
Это означает, что если вы измените настройку кодировки символов в терминале, вы не переопределите ее в скрипте запуска оболочки.
wget
? А чтоlocale
показывает и совпадает ли это с тем, что вы ожидаете от выбора языка на панели настроек « Язык и текст» ?