我尝试为ls创建一个别名(基本上应该映射到ls -lah
)
我尝试了以下代码,但它不起作用:
function ls
ls -lah
end
funcsave ls
但是当我打电话给它时,我得到了这样的信息: 函数'ls'立即调用自身,这将导致无限循环。 在函数'ls' 呼吁标准输入
答案 0 :(得分:3)
您正在寻找的是command
命令。
我还建议将任何参数(存储在$argv
中)传递给别名命令。
所以你的例子应该是:
function ls
ls -lah $argv
end
要通过简单的命令完成所有这些操作,您只需使用alias
命令。
alias ls "command ls -lah"
请注意,通常别名不会为您提供有助于 fish 的友好性的好的自动完成建议。这种特殊情况是一个例外,因为函数和原始命令具有相同的方式,但是,无论如何,这里有两种获得完成的方法:
答案 1 :(得分:2)
您需要command
关键字。另外,将函数的参数传递给ls
function ls
command ls -lah $argv
end
答案 2 :(得分:0)
如果您需要设置ls
的别名,则上述答案都可以。
但是,鱼已经有ls -lah
的命令,即la
。