用于rake命令的控制台中的选项卡完成

时间:2011-01-29 05:49:15

标签: shell rake

我很高兴用我的.bashrc中的以下代码块完成标签:

cd () {
    command cd "$@";
    if [ -f ./Rakefile ]; then
        complete -W "$(rake -T | awk 'NR != 1 {print $2}')" rake
    else
        complete -r rake
    fi
}

当我使用cd进入目录时,将加载此命令。如果目录不包含rakefile,则会显示消息“bash:complete:rake:no completion specification”。是否有可能省略此消息?

感谢您的帮助 的Matthias

1 个答案:

答案 0 :(得分:1)

我会这样做:

complete -r rake 2>/dev/null

当它在不存在时(已经被删除)尝试删除完成规范时输出错误。只需重定向stderr即可转储错误消息。

相关问题