Linux 为什么这个shell脚本不运行?

Linux 为什么这个shell脚本不运行?,linux,shell,sh,Linux,Shell,Sh,我正在尝试运行此脚本 echo "Buscando Instancias Del Servidor Corriendo Actualmente...." processId=$(ps -fea | grep jboss | grep -v grep | awk '{print $2}' | xargs) host=$(/sbin/ifconfig eth0 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1

我正在尝试运行此脚本

echo "Buscando Instancias Del Servidor Corriendo Actualmente...."
processId=$(ps -fea | grep jboss | grep -v grep | awk '{print $2}' | xargs)
host=$(/sbin/ifconfig eth0 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'  | head -1)
echo "$processId"
echo "$host"
if [ -z "$processId"]
  then
  echo "hay instancias corriendo del servidor con Id proceso:  $processId"
else
  echo "No Hay Instancias Del Servidor Corriendo Actualmente"
fi 
但我得到了这个错误:

意外标记附近的语法错误
fi


请尝试在if语句的右括号前添加空格,如下所示:

echo "Buscando Instancias Del Servidor Corriendo Actualmente...."
processId=$(ps -fea | grep jboss | grep -v grep | awk '{print $2}' | xargs)
host=$(/sbin/ifconfig eth0 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}'  | head -1)
echo "$processId"
echo "$host"
if [ -z "$processId" ]
  then
  echo "hay instancias corriendo del servidor con Id proceso:  $processId"
else
  echo "No Hay Instancias Del Servidor Corriendo Actualmente"
fi 

]
前面需要一个空格。运行代码。如果问题有更新,请编辑原始问题。读取注释中的代码是不可能的。如果你修复了这个间距错误,其余的看起来就可以了。使用固定代码和在该点上获得的确切错误消息进行更新。另外,请确保此文件没有DOS行结尾。我认为if和else中的消息已被交换:-/@rahul,行尾的空格不是问题。