Як ви "джерелом" файлу в рибі?


12

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

У bash є команда "source", але вона не існує в рибі.

Відповіді:


13

Нижче я маю на ~/.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була викликана команда ..


@JohnMetta, дивіться посилання у питанні та funtoo.org/wiki/Keychain . Вам потрібно буде встановити програму.
Jamessan

Вибачте, мені було дурно це публікувати. Я насправді не хотів брелок - я шукав, щоб замінити команду 'source', і насправді не читав. Використання .- це те, що мені було потрібно.
JohnMetta

Дякуємо за включення [ -e $HOME/.keychain/$HOSTNAME-fish ]; and . $HOME/.keychain/$HOSTNAME-fishлінії. Це змусило мою брелок працювати і git перестати просити мене за фразу кожного разу, коли я хотів натиснути.
cjm


2

Рекомендований на сторінці документації Keychain спосіб ввести це в 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


0

Якщо файл, який ви намагаєтеся створити, містить bash, подумайте про використання Bass .

Це дозволить вам написати, наприклад:

bass source ~/.bash_profile
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.