8

Я хотел бы использовать связку ключей с оболочкой fish , но я не уверен, как заставить fish загрузить файл ~/.keychain/hostname-fish для установки соответствующих переменных среды.

В bash есть команда "source", но она не существует в fish.

3 ответа3

10

Ниже приведено то, что у меня есть в ~/.config/fish/config.fish для вашего конкретного примера.

set -gx HOSTNAME (hostname)
if status --is-interactive;
    keychain --nogui --clear ~/.ssh/id_rsa
    [ -e $HOME/.keychain/$HOSTNAME-fish ]; and source $HOME/.keychain/$HOSTNAME-fish
end

Исходная команда - это source , который также работает в bash.


До рыбы 2.1.0 вызывалась source команда . ,

2

Способ, рекомендуемый на странице документации Брелка, должен поместить это в config.fish:

if status --is-interactive
    keychain --eval --quiet --quick path/to/id_rsa
end

Затем добавьте это в начало вашего скрипта:

source $HOME/.keychain/(hostname)-fish

источник: http://www.funtoo.org/Keychain

1

Используйте исходную команду:

source filename.txt

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