如何在鱼壳中定义别名?

我想在鱼中定义一些别名。 显然应该可以在其中定义它们

~/.config/fish/functions 

但是当我重新启动shell时,它们不会自动加载。 有任何想法吗?

只需使用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 

感兴趣的人可能想在官方手册中find更多关于鱼别名的内容 。

这是我如何定义一个新的函数foo ,运行它,并永久保存。

 sthorne@pearl~> function foo echo 'foo was here' end sthorne@pearl~> foo foo was here sthorne@pearl~> funcsave foo 

为了后代,鱼别名只是function:

 $ 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 ,就创build它。
  2. 在那里你可以写你的function。 function name command end

保存你的文件为~/.config/fish/functions/{some_function_name}.fish ,当你开始钓鱼的时候它们应该被自动加载。

正确加载〜/ .config / fish / functions中的函数

您可以在文件中只设置一个函数,并且名称文件与函数名称+ add .fish扩展名相同。

这种方式改变文件内容重新加载function在打开的terminal(注意一些延迟可能会发生〜1-5s)

这样如果你通过命令行编辑

 function name; function_content; end 

然后

 funcsave name 

您在控制台中具有用户定义的function,并按照相同的顺序进行自定义。

在〜/ .config / fish / functions中调用函数mkalias.fish并放入

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

这将自动创build别名。

鱼通过在〜/ .config / fish / config.fish中执行命令来启动。 如果它不存在,可以创build它。

步骤1。 使configuration文件(如.bashrc)

config.fish

第2步。 只要写下你的别名

别名rm =“rm -i”

打开vim .config/fish/conf.d/omf.fish ,绑定你的bash定义并重启fishterminal。