Update:这是一个更通用的命令,更容易复制.贝类发现有一种更普遍的模式:
non-existingcommand & existingcommand &
例如
xyz & echo &
此外,我让一位同事try 通过ssh连接,但在运行命令后,他的连接被关闭.所以这似乎并不局限于某个终端模拟器.
Original question:
echo?a=1&b=2|3&c=4=
行为:
执行该命令后,我当前的Gnome终端选项卡将在没有警告的情况下关闭.
背景:
我们用curl命令测试一个URL,但忘记了引用它或转义特殊字符(因此使用了符号和等号).我们期待着一些关于语法问题或未找到命令的废话,相反,我们看着shell简单地退出.我们花了一些时间将命令的范围缩小到导致该行为的最小值.
我们正在Ubuntu 14.10上使用Gnome终端.奇怪的是,即使我从会话中分离,我在运行byobu的另一个盒子上也不存在这种行为.这在Cygwin身上也不会发生.不幸的是,我只能用Ubuntu 14.10进行测试.
注意:下面的命令也会杀死我的终端,但会杀死only about half of the time个:
echo?a=1&b=2&c=3=
其他测试:
有人建议使用subshell...
guest-cvow8T@chortles:~$ bash -c 'echo?a=1&b=2|4&c=3='
bash: echo?a=1: command not found
guest-cvow8T@chortles:~$ bash: 4: command not found
没有出口.