正如标题所说,在bash中运行rvm get stable
代码后,我开始收到错误-bash: [: too many arguments
。执行任何命令时会弹出此错误,但会正确执行命令。例如ls
和cd
将按预期执行,但然后打印出错误。
我正在运行macOS Sierra。非常感谢任何帮助!
答案 0 :(得分:0)
运行rvm get stable
后我遇到了同样的问题。
由于rvm
需要作为一个函数在shell会话中运行,因此不能从[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
或.bash_profile
删除行.bashrc
。
在我的环境中,原因是旧版bash-it和rvm之间的冲突。如果您正在使用bash-it
并遇到此问题,这可能有所帮助。
我采取了以下步骤:
.bash_profile
(如果您有.bashrc
,您可能也想备份它。)bash-it
的卸载脚本(请参阅上面链接中的说明)并删除~/.bash-it
文件夹。bash-it
。.bash_profile
备份添加到.bash_profile
缺少的内容。bash-it
别名,完成和插件。我一打开一个新的shell,就停止收到错误,rvm
开始正常工作。
答案 1 :(得分:-1)
对于遇到此问题的任何人,我可以通过从〜/ .profile和〜/ .bash_profile中删除以下代码行来阻止显示错误消息:
void echo_tx_tcp()
{
err_t wr_err = ERR_OK;
struct tcp_pcb *l_tcp_pcb;
l_tcp_pcb = tcp_new();
ip_addr_t dest_ip =
{ ((u32_t)0x0C0C0C2BUL) };
wr_err = tcp_bind(l_tcp_pcb, &dest_ip, 12);
wr_err = tcp_connect(l_tcp_pcb, &dest_ip, 12, echo_accept);
tcp_sent(l_tcp_pcb, echo_sent);
struct pbuf *p = pbuf_alloc(PBUF_TRANSPORT, 1024, PBUF_RAM);
unsigned char buffer_send[1024] = "My Name Is TCP";
p->payload = buffer_send;
p->len = 1024;
p->tot_len = 1024;
wr_err = tcp_write(l_tcp_pcb, p->payload, p->len, 1);
wr_err = tcp_output(l_tcp_pcb);
if(wr_err == ERR_OK)
{
p->len++;
}
return;
}
这是通过更新rvm添加的,rvm在删除这些行后仍然有效。
更新:这停止了错误,但是将我的ruby版本从2.2反向弹回到2.0