Child bash идентичен вызывающему родителю

Можно ли вызвать bash, чтобы в новой оболочке присутствовало все, что касается моего окружения (псевдонимы, функции, экспортированные / неэкспортированные переменные и т. Д.)?

Я бы согласился на получение переменных оболочки, которые не являются частью моего окружения. я бегу bash --norc и первое, что я заметил, я потерял $PS1 и мой ls цвета. Я мог бы просто экспортировать эти переменные перед вызовом bash, но я беспокоюсь о множестве других вещей, которые я мог бы пропустить.

2 ответа

Решение

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

Нет.

Однако вы можете включить автоматический экспорт функций и переменных, добавив set -a в верхней части вашего rc скрипт.

Другие вопросы по тегам