ENV(1) | Команды пользователя | ENV(1) |
ИМЯ
env — запустить программу в изменённой среде окружения
СИНТАКСИС
env [ПАРАМЕТР]... [-] [ИМЯ=ЗНАЧЕНИЕ]... [КОМАНДА [АРГУМЕНТ]...]
ОПИСАНИЕ
Присвоить каждому ИМЕНИ в среде окружения ЗНАЧЕНИЕ и выполнить КОМАНДУ.
Аргументы, обязательные для длинных параметров, обязательны и для коротких.
- -a, --argv0=АРГУМЕНТ
- передать АРГУМЕНТ в качестве нулевого аргумента КОМАНДЫ
- -i, --ignore-environment
- начать с пустой среды окружения
- -0, --null
- завершать каждую выводимую строку символом конца строки NUL вместо перевода на новую строку
- -u, --unset=ИМЯ
- удалить переменную из среды окружения
- -C, --chdir=КАТАЛОГ
- сменить рабочий каталог на КАТАЛОГ
- -S, --split-string=S
- разбить строку S на отдельные аргументы; используется для передачи нескольких аргументов в строках с шебангом (#!)
- --block-signal[=СИГНАЛ]
- заблокировать передачу КОМАНДЕ сигнала(-ов) СИГНАЛ
- --default-signal[=СИГНАЛ]
- вернуть настройки обработки сигнала(-ов) СИГНАЛ к значениям по умолчанию
- --ignore-signal[=СИГНАЛ]
- отключить обработку сигнала(-ов) СИГНАЛ
- --list-signal-handling
- вывести настройки обработки сигналов, которые отличаются от значений по умолчанию, в стандартный поток ошибок
- -v, --debug
- выводить подробную информацию по каждому этапу обработки
- --help
- отобразить эту справочную информацию и завершить работу
- --version
- вывести информацию о версии и завершить работу
Простое указание «-» подразумевает параметр -i. Если не указана КОМАНДА, вывести содержимое получившейся среды окружения.
СИГНАЛ может быть представлен как именем сигнала (например, «PIPE»), так и его номером (например, «13»). Если СИГНАЛ не указан, в список будут включены все известные сигналы. Несколько сигналов могут быть указаны через запятую. Пустое значение аргумента СИГНАЛ игнорируется.
Коды завершения:
- 125
- команда env сама завершилась с ошибкой
- 126
- КОМАНДА была найдена, но её не удалось вызвать
- 127
- КОМАНДУ не удалось найти
- -
- код завершения КОМАНДЫ в остальных случаях
ПАРАМЕТРЫ
Использование -S/--split-string в сценариях
Параметр -S позволяет указать несколько параметров в сценарии. Запуск сценария с именем 1.pl, содержащего следующую первую строку:
#!/usr/bin/env -S perl -w -T ...
приведёт к выполнению perl -w -T 1.pl .
Без параметра «-S» сценарий, скорее всего, завершится со следующей ошибкой:
/usr/bin/env: 'perl -w -T': Нет такого файла или каталога
Более подробную информацию смотрите в полной документации.
Использование --default-signal[=СИГНАЛ]
Данный параметр позволяет настроить обработчик сигнала на выполнение действий по умолчанию, что невозможно сделать с помощью обычной команды оболочки trap. В примере ниже гарантируется завершение seq при получении сигнала SIGPIPE независимо от того, как этот сигнал обрабатывается в процессе, вызвавшем эту команду:
sh -c 'env --default-signal=PIPE seq inf | head -n1'
ПРИМЕЧАНИЯ
На странице руководства POSIX exec(3p) приведено следующее:
АВТОРЫ
Программа написана Ричардом Млынариком (Richard Mlynarik), Дэвидом Маккензи (David MacKenzie) и Ассафом Гордоном (Assaf Gordon).
ИНФОРМАЦИЯ ОБ ОШИБКАХ
Онлайн-справка
GNU coreutils: https://www.gnu.org/software/coreutils/
Сообщайте
обо всех
ошибках
перевода
по адресу
https://translationproject.org/team/ru.html
АВТОРСКИЕ ПРАВА
Copyright © 2024 Free Software Foundation, Inc.
Лицензия GPLv3+: GNU
GPL версии 3
или выше
https://gnu.org/licenses/gpl.ru.html.
Это
свободное
программное
обеспечение:
вы можете
изменять и
распространять
его. Не
предоставляется
НИКАКИХ
ГАРАНТИЙ в
той мере, в
которой
это
разрешено
законом.
СМОТРИТЕ ТАКЖЕ
sigaction(2), sigprocmask(2), signal(7)
Полная
документация
на https://www.gnu.org/software/coreutils/env,
также
доступна
локально
посредством
info '(coreutils) env invocation'
ПЕРЕВОД
Русский перевод этой страницы руководства разработал(и) Андрей Догадкин <adogadkin@outlook.com>
Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.
Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских переводчиков.
август 2024 г. | GNU coreutils 9.5 |