1

У меня есть репозиторий на GitHub, который состоит из большинства моих точечных файлов, включая файлы, такие как .zshrc .

Когда мне нужно перейти в новую среду разработки, мне просто нужно извлечь мои точечные файлы из github и убедиться, что они находятся в правильных местах.

Но иногда новая среда сильно отличается от старой, например, мне может понадобиться перейти с MacOS на какой-то дистрибутив Linux.

Эти различия могут сделать мои конфигурации неправильными, поэтому мне интересно, могу ли я переместить все эти зависящие от среды конфигурации из .zshrc и сохранить в некоторых внешних файлах.

1 ответ1

2

Вы можете загрузить дополнительные файлы в ~/.zshrc с source FILENAME .

В моем ~/.zshrc есть следующее для всех файлов с расширением .zsh в ~/.zshrc.d

# load additional configuration
if [[ -d ~/.zshrc.d ]]; then
    for file in ~/.zshrc.d/*.zsh; do
        source "$file"
    done
    unset file
fi

Тогда вы можете просто разместить там только те файлы, которые вам нужны для конкретной среды.

Вы даже можете пойти дальше и создать подкаталог для каждой среды и загрузить только ту, которая нужна. Например, на основе содержимого $OSTYPE:

if [[ -d ~/.zshrc.d/${OSTYPE} ]]; then
    for file in ~/.zshrc.d/${OSTYPE}/*.zsh; do
        source "$file"
    done
    unset file
fi

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .