如何在鱼壳中隐藏具有某些扩展名的文件


当我

从鱼壳内执行ls命令时,我不想看到.pyc文件。有了bash,我可以做一个别名。对于鱼,我尝试将以下内容放入~

/.config/fish/config.fish
function ls
  command ls --hide="*.pyc"
end

但它不起作用。我得到

ls: illegal option -- -
usage: ls [-ABCFGHLOPRSTUWabcdefghiklmnopqrstuwx1] [file ...]

问题是你显然正在使用 BSD ls 命令。在Mac OS X上,我收到同样的错误,因为/bin/ls无法识别任何长选项。在OS X上,brew install coreutils获取支持--hide的GNU ls。

此外,您可能希望函数的主体是

command ls --hide="*.pyc" $argv

您还可以根据输出是否发送到 tty 等因素让您的函数行为不同。这是我的函数:

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

相关内容

  • 没有找到相关文章

最新更新