Как определить псевдоним в раковине рыбы?
Вопрос
Я хотел бы определить некоторые псевдонимы в рыбе. По-видимому, должно быть возможно определить их в
~/.config/fish/functions
Но они не загружаются автоматически, когда я перезагружаю оболочку. Есть идеи?
Решение
Просто использовать alias
. Отказ Вот основной пример:
# Define alias in shell
alias rmi "rm -i"
# Define alias in config file
alias rmi="rm -i"
# This is equivalent to entering the following function:
function rmi
rm -i $argv
end
# Then, to save it across terminal sessions:
funcsave rmi
Эта последняя команда создает файл ~/.config/fish/functions/rmi.fish
.
Заинтересованные люди могут хотеть больше узнать о псевдонимах рыб в Официальное руководство.
Другие советы
Вот как я определяющую новую функцию foo
, Запустите его и сохраните его настойчиво.
sthorne@pearl~> function foo
echo 'foo was here'
end
sthorne@pearl~> foo
foo was here
sthorne@pearl~> funcsave foo
Для потомства псевдоним рыб - это просто функции:
$ alias foo="echo bar"
$ type foo
foo is a function with definition
function foo
echo bar $argv;
end
Чтобы удалить его
$ unalias foo
/usr/bin/unalias: line 2: unalias: foo: not found
$ functions -e foo
$ type foo
type: Could not find “foo”
- Если нет config.fish. в ~ / .config / fish /, сделай это.
- Там вы можете написать вашу функцию.
function name command end
Сохраните ваши файлы как ~/.config/fish/functions/{some_function_name}.fish
И они должны быть автозагрузки, когда вы начинаете рыбу.
Правильно загружать функции из ~ / .Config / fish / functions
Вы можете установить только ОДИН Функция внутри файла и файла имени так же, как имя функции + добавочный добавочный вид .fish.
Таким образом, изменяющее содержимое файла Перезагрузку функций в открытых терминалах (обратите внимание на некоторую задержку может возникнуть ~ 1-5S)
Таким образом, если вы редактируете либо по командной линии
function name; function_content; end
тогда
funcsave name
У вас есть пользовательские функции в консоли и на заказ, сделанные в том же порядке.
Рыба начинается, выполняя команды в ~ / .Config / fish / config.fish. Вы можете создать это, если оно не существует.
шаг 1. Сделайте файл конфигурации (например .bashrc)
config.fish.
шаг 2. Просто напишите, как это псевдоним;
псевдоним rm = "RM -i"
Если вы добавите abbr
вместо АН alias
Вы получите лучшую автоматическую завершенную. В рыбе abbr
Более близко соответствует поведению псевдонима Bash.
abbr -a gco git checkout
Буду -a
DD новый abbr
отзыв gco
это расширяется к git checkout
.
Вот демонстрация видео полученных автоматически полных функций
сделать функцию в ~ / .Config / fish / functions под названием mkalias.fish и положить это в
function mkalias --argument key value
echo alias $key=$value
alias $key=$value
funcsave $key
end
И это создаст псевдонимы автоматически.