Дефис, кажется, Busybox-определенная функция (как "askfirst", который был, как я нашел, что Вы используете Busybox). Пример inittab файл говорит:
# /bin/sh invocations on selected ttys
#
# Note below that we prefix the shell commands with a "-" to indicate to the
# shell that it is supposed to be a login shell. Normally this is handled by
# login, but since we are bypassing login in this case, BusyBox lets you do
# this yourself...
#
# Start an "askfirst" shell on the console (whatever that may be)
::askfirst:-/bin/sh
Так, это запускает оболочку как оболочку входа в систему (путем начала argv [0] с дефисом). Какое средство оболочки входа в систему выходит за рамки этого вопроса, но это обычно, по крайней мере, означает, что это выполнит различные файлы запуска (т.е. ~/.profile
).
Конвенция использования дефиса в argv [0], а не надлежащего флага командной строки, для сообщения оболочки, это - оболочка входа в систему, является древней конвенцией - это относится ко времени, по крайней мере, Второго Выпуска UNIX. (argv [0] был просто "-"
для оболочек входа в систему до Шестого Выпуска затем это было изменено на "-/bin/sh"
)
Необходимо заменить переменную ЛЕНГА в текущей оболочке.
Поместить
export LANG=en_US.UTF-8
в Вашем файле дистанционного управления оболочки (для удара это ~/.bashrc
) и перезапустите терминальный сеанс (или просто получите емкостно-резистивный файл еще раз с source ~/.bashrc
или даже просто перезапуск колотит с exec bash
)
Обратите внимание на то, что необходимо генерировать эту локаль прежде.
Также можно использовать export LANG=C
.
Также существуют другие переменные ЛЕНГА (от удара человека):
LANG Used to determine the locale category for any category not
specifically selected with a variable starting with LC_.
LC_ALL This variable overrides the value of LANG and any other LC_
variable specifying a locale category.
LC_COLLATE
This variable determines the collation order used when sorting
the results of pathname expansion, and determines the behavior
of range expressions, equivalence classes, and collating
sequences within pathname expansion and pattern matching.
LC_CTYPE
This variable determines the interpretation of characters and
the behavior of character classes within pathname expansion and
pattern matching.
LC_MESSAGES
This variable determines the locale used to translate double-
quoted strings preceded by a $.
LC_NUMERIC
This variable determines the locale category used for number
formatting.
Можно назвать приложение со следующим синтаксисом:
Например, Вы хотите английские страницы справочника (для просто единственной команды):
user@host:~# LC_ALL=C man ls
Или Вы сталкиваетесь с ошибкой (моя система находится на немецком языке):
user@host:~$ ls -la /root/
ls: Öffnen von Verzeichnis /root/ nicht möglich: Keine Berechtigung
user@host:~$ LC_ALL=C ls -l /root/
ls: cannot open directory /root/: Permission denied
Попытайтесь сослаться на это: 1) https://wiki.debian.org/ChangeLanguage
Короче говоря, Вы хотите установить свою ЛОКАЛЬ (через ЛЕНГА), предпочтительно в Вашем .bashrc.
export LANG=en_US.UTF-8
Если вам нужны только сообщения об ошибках, а не вся локаль, вы можете использовать:
export LC_MESSAGES=C
LANG
переменная среды только для установки (предпочтительного) языка программ, запущенных в консоли, является неправильной. Это чтоLC_MESSAGES
иLANGUAGE
переменные среды предназначены для. Посмотрите переменную локали 'ЯЗЫКА' - как установить английский язык как основной язык? Ошибка в gettext?. – Piotr Dobrogost 16.02.2017, 11:26