Как определить псевдоним в раковине рыбы?

StackOverflow https://stackoverflow.com/questions/2762994

  •  02-10-2019
  •  | 
  •  

Вопрос

Я хотел бы определить некоторые псевдонимы в рыбе. По-видимому, должно быть возможно определить их в

~/.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”
  1. Если нет config.fish. в ~ / .config / fish /, сделай это.
  2. Там вы можете написать вашу функцию.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

Буду -aDD новый abbrотзыв gco это расширяется к git checkout.

Вот демонстрация видео полученных автоматически полных функций

сделать функцию в ~ / .Config / fish / functions под названием mkalias.fish и положить это в

function mkalias --argument key value
  echo alias $key=$value
  alias $key=$value
  funcsave $key
end

И это создаст псевдонимы автоматически.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top