我想将--group-directories-first
添加到ls
命令。如果在~/.config/fish/config.fish
中我可以定义像这样的别名:
alias ls "ls --group-directories-first"
但它会覆盖fish shell的ls
函数定义:
function ls --description 'List contents of directory'
set -l param --color=auto
if isatty 1
set param $param --indicator-style=classify
end
command ls $param $argv
end
我可以重新定义ls
函数以添加所需的参数:
function ls --description 'List contents of directory'
set -l param --color=auto --group-directories-first
if isatty 1
set param $param --indicator-style=classify
end
command ls $param $argv
end
但我不喜欢这个解决方案:我想要的是重新定义ls
以便用参数调用前一个ls
函数。有没有办法实现它?
答案 0 :(得分:4)
你可以重命名复制fish的ls功能:
functions --copy ls __fish_ls
然后在你的函数中使用它:
alias ls '__fish_ls --group-directories-first'
答案 1 :(得分:2)
abbr ls" ls --group-directories-first"
...