2011-01-29 30 views
3

我很高兴能得到标签与完成的代码在我的.bashrc以下块:Tab补齐命令

cd() { 
    command cd "[email protected]"; 
    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'。有没有可能忽略此消息?

感谢您的帮助 马蒂亚斯

回答

1

我只是这样做:

complete -r rake 2>/dev/null 

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

相关问题