源RVM脚本 - “grep:invalid option - 'p'”

时间:2014-04-30 16:29:17

标签: ruby grep rvm

每当我尝试在Ubuntu或其衍生产品上使用RVM时,我都会收到以下错误:

grep: invalid option -- 'p' Usage: grep [OPTION]... PATTERN [FILE]... Try 'grep --help' for more information.

我检查了type grep,然后得到了 grep is /bin/grep。 所以grep没有别名。

这是RVM中的已知错误吗?如果没有,还有什么可能导致这种行为?

编辑:当我source ~/.bash_profile时会发生这种情况。当我只运行与RVM相关的部分时,我已经离开并重现了这种行为。

3 个答案:

答案 0 :(得分:4)

我间歇性地出现了完全相同的症状:

$ grep anything *
grep: invalid option -- 'p'
Usage: grep [OPTION]... PATTERN [FILE]...
Try 'grep --help' for more information.

在我的情况下,它实际上是以-开头的该目录中的文件:

$ ls ./'-'*
./-p

我的解决方案就是删除文件:

$ rm ./"-p"
$ ls ./'-'*
ls: cannot access ./-*: No such file or directory
$ grep anything *
grep: *: No such file or directory

答案 1 :(得分:1)

原来这是RVM使用的另一个命令我已经别名。

100次中的99次,当我使用ps时,我正在ps -aux | grep $SOMETHING。在我的.bashrc中,我有alias ps='ps aux | grep'。在RVM中,ps与'-p'标志一起使用。使用此别名,它注册为ps aux | grep -p

答案 2 :(得分:1)

从配置中删除ps='ps ...',例如.bashrc,或执行unalias ps,然后运行RVM命令。