Простой способ восстановить Ваш MANPATH

Если собирание в группу аргументов будет приемлемо, найдите | xargs, то вероятно, даст лучшую производительность, так как это выполнит команду намного меньше раз, чем находят - должностное лицо. Если Вы хотите выполнить команду каждый раз для каждого файла, или выполниться в подкаталоге файла необходимо, вероятно, использовать, находят - должностное лицо или-execdir.

Как правило, предпочтительно избегать определенных для оболочки циклов; найдите и xargs достаточно для большинства сценариев.

3
03.08.2011, 17:45
3 ответа

Переменные, экспортируемые как этот, являются только эффективными при Вашей текущей оболочке и любых дочерних процессах. Если бы Вы не сохранили те команды в своем профиле или емкостно-резистивном оболочкой файле, то любые новые оболочки, которые начинают, должны иметь исходное значение снова.

Закрытие Вашей текущей оболочки и запуск нового являются самым простым способом получить значимый набор env переменные назад.

5
27.01.2020, 21:13

Если Вы заботитесь о своей текущей сессии оболочки, можно использовать следующее:

MANPATH=$(source /etc/profile; echo $MANPATH)

Но большая часть простого способа могла бы быть, чтобы только запустить новую сессию, в случае Вы не заботитесь о текущей среде оболочки и переменных.

Примечание: Вышеупомянутая команда запускает новый процесс, который читает в масштабе всей системы /etc/profile (обеспечение всех основных определений для переменных среды), и печать "reseted" значение MANPATH. $() конструкция поместит вывод этого процесса в оболочке MANPATH. Другие переопределения из-за source /etc/profile не будет влиять на текущую оболочку, только подпроцесс.

1
27.01.2020, 21:13
  • 1
    Та команда, кажется, не имеет эффект для меня. Я предполагаю, что просто перезапущу свою сессию :-/. –  MattLBeck 03.08.2011, 18:06
  • 2
    @kikumbob: хорошо, таким образом, это кажется использованием /etc/profile варьируется от одного распределения до другого. Я не могу сказать, где настройки по умолчанию находятся в Вашей системе. –  Stéphane Gimenez 03.08.2011, 18:28

С некоторыми man реализации, команда manpath -g показывает системный путь человека по умолчанию. Если Ваша реализация не имеет a manpath команда, регистрация man man каково значение по умолчанию. Но если у Вас был a MANPATH переменная определила, это, вероятно, будет отличаться от значения по умолчанию.

Нет никакого волшебного способа получить предыдущее значение переменной среды. При установке его на этой сессии оболочки предыдущая установка могла бы все еще быть в истории оболочки; попытайтесь искать предыдущее присвоение (например, Ctrl+R MANPATH= в ударе или zsh). Если переменная среды была установлена в некотором чтении конфигурационного файла во время входа в систему, только запустите оболочку в другом терминале и вставке копии значение оттуда.

1
27.01.2020, 21:13

Теги

Похожие вопросы