每当我打开我的terminal,我在上面得到这个错误:
bash: /etc/bash_completion.d/hping2: line 22: syntax error near unexpected token `$( compgen -W '02 04 08 10' )' bash: /etc/bash_completion.d/hping2: line 22: ` $COMPREPLY=( $( compgen -W '02 04 08 10' ) )'
删除第22行开头的美元符号,然后重试:
COMPREPLY=( $( compgen -W '02 04 08 10' ) )
这是由bash完成脚本之一(在这种情况下,它是hping2的完成脚本)中的语法错误造成的。 当terminal启动一个名为bash的程序来处理你的terminal会话时, bash运行它的初始化脚本,包括完成脚本/etc/bash_completion.d/hping2 。
出于某种原因,您的计算机上的脚本被搞砸了(也许有人不小心编辑它),导致语法错误。 我认为解决这个问题的正确方法是改变这一行
COMPREPLY=( $( compgen -W '02 04 08 10' ) )
(在行的开头删除$ )。