Есть ли в моем ~/.zshrc
переменная команды или среды, в которой я могу проверить разницу между тем, когда я запускаю source ~/.zshrc
для обновления конфигурации, и когда оболочка читает ~/.zshrc
при инициализации?
Пока что мое решение состоит в том, чтобы установить переменную в конце ~/.zshrc
и проверить эту переменную при последующем рассмотрении, но мне любопытно, есть ли более чистый способ непосредственного получения этой информации из системы или среды вместо взлома это вместе таким образом, что кажется таким хрупким ....
# somewhere in ~/.zshrc
if [[ -n $CONSOLE_ALREADY_RUNNING ]]; then
echo "we've alredy loaded ~/.zshrc"
echo "so you must be sourcing it"
fi
# many more lines of ~/.zshrc commands
# last line of ~/.zshrc
export CONSOLE_ALREADY_RUNNING=1
Похоже, должен быть какой-то более понятный способ проверить, просто ли я перезагружаюсь через source /.zshrc
или если .zshrc
выполняется для нового экземпляра zsh
который был только что загружен в память.