Как восстановить среду оболочки?

Эта проблема давно искала меня, и хотя я думал, что нашел свой ответ через EnvWatcher , к сожалению, он работает только на Bash. И я использую zsh.

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

Например, я хотел бы иметь следующий рабочий процесс.

source some-functions alias another-thing export SVN_EDITOR=vim RESET-ZSH # none of the above are valid any more 

Есть ли такая встроенная возможность, или я преследую бабочек?

2 Solutions collect form web for “Как восстановить среду оболочки?”

Вы можете просто exec zsh , который даст вам новый zsh и перезапустит функции init. Обратите внимание, что вам нужно выполнить exec zsh -l для входа zsh, чтобы сохранить статус «login shell». Я не знаю, насколько хорошо он сохраняет историю команд (это работает для меня, но если вы используете несколько оболочек на разных терминалах, вы можете получить «перекрестные помехи» между историей двух оболочек)

Я знаю, что немного опоздал на вечеринку, но чтобы отменить экспортированные переменные среды, вы можете использовать команду env env -i zsh

env запускает команду, заданную как аргумент, и -i дает ему чистую среду.

Надеюсь, что кто-то поможет!

  • Сериализовать переменную оболочки в bash или zsh
  • Список X случайных файлов из каталога
  • Удалите все, кроме одного (или более) типа файла
  • Сломанный поиск истории после обновления oh-my-zsh
  • Какая магия позволяет мне добавлять удаленные файлы при вводе команды scp?
  • Как создать цепочку команд?
  • смена каталога происходит очень медленно
  • Заполнение вкладки ZSH: только полные файлы, а не двоичные файлы
  • Гибридный код в сценариях оболочки. Обмен переменными
  • Ошибка zsh не сбрасывается должным образом
  • $ {! FOO} и zsh
  • Interesting Posts

    Существуют ли блокировки, мьютексы и семафор между потоками или между процессами?

    Ограничить каталог только одним файлом?

    SELinux предотвращает ssh через открытый ключ

    пользовательский максимальный размер окна в opensuse 13.2 (KDE)

    Можно ли исключить некоторые привязки клавиш в VirtualBox?

    Соединение сокета отказано (raspbian), но порты открыты для соединений

    Каким должен быть размер буфера для команды sort?

    Пакеты и т. П. Для настройки новых систем

    локально созданный псевдоним не используется, если вызывается с использованием обратных ссылок (`)

    Как получить 3 минуты в будущем?

    Ubuntu 15.10 mini iso preseed не реконструирован

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

    «Пользователь аутентифицирован, но не подключен» после изменения пароля Exchange

    Мониторинг процесса в Debian

    Конфигурация myhostname с многопоточным именем postfix

    Linux и Unix - лучшая ОС в мире.