我想创建一个cd函数,它扩展当前的cd函数(在我的机器上),它位于/usr/local/Cellar/fish/2.6.0/share/fish/functions/cd.fish
。这可能吗?
这样的事情:
function cd
if i_can_handle_it
do_my_thing_with $argv
else
call /usr/local/Cellar/fish/2.6.0/share/fish/functions/cd.fish $argv
end
end
答案 0 :(得分:2)
您不能拥有两个名称相同的功能。您可以使用具有相同名称的内置命令,函数命令和外部命令。此问题的标准解决方案是首先重命名要包装的函数:functions -c cd cd2
。然后定义调用cd
的{{1}}函数。请注意,无论cd2
是否已经运行并因此定义,这都有效,因为首先更改名称会使其自动加载。