我想在fish中定义一些别名。显然,应该可以在
~/.config/fish/functions
但当我重新启动shell时,它们不会自动加载。什么好主意吗?
我想在fish中定义一些别名。显然,应该可以在
~/.config/fish/functions
但当我重新启动shell时,它们不会自动加载。什么好主意吗?
当前回答
如果没有配置。鱼在~/。Config /fish/,使它。 这里你可以写你的函数。函数名;命令;结束
其他回答
Fish首先执行~/.config/ Fish /config.fish中的命令。 如果它不存在,可以创建它:
链球菌~ / . problem /鱼/ problem .鱼
并保存为:wq
步骤1。制作配置文件(如.bashrc)
config.fish
步骤2。就像这样写你的别名;
= rm= rm i
在~/中创建一个函数。Config /fish/ mkalias函数。钓鱼,把这个放进去
function mkalias --argument key value
echo alias $key=$value
alias $key=$value
funcsave $key
end
这将自动创建别名。
使用别名即可。这里有一个基本的例子:
# Define alias in shell
alias rmi "rm -i"
# Define alias in config file ( `~/.config/fish/config.fish` )
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。
感兴趣的人可以在官方手册中找到更多关于鱼类别名的信息。
将文件保存为~/.config/fish/functions/{some_function_name}。当你开始钓鱼时,它们应该自动加载。
对于后人来说,鱼的别名只是函数:
$ 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”