Linux 使用单引号仍然给出;“未找到事件”;在狂欢节上

Linux 使用单引号仍然给出;“未找到事件”;在狂欢节上,linux,bash,shell,sh,Linux,Bash,Shell,Sh,我使用单引号,但shell将其解释为历史扩展 #!/bin/bash if [ -z `$1` ] || [ -z `$2` ] then echo `Wrong ID` >&2 exit 1 fi 您应该使用双引号而不是反引号 #!/bin/bash if [ -z "$1" ] || [ -z "$2" ] then echo "Wrong ID" >&2 exit 1 fi 您应该使用双引号而不是反引号 #!/bin/bash if [ -z

我使用单引号,但shell将其解释为历史扩展

#!/bin/bash
if [ -z `$1` ] || [ -z `$2` ]
then
  echo `Wrong ID` >&2
  exit 1
fi

您应该使用双引号而不是反引号

#!/bin/bash
if [ -z "$1" ] || [ -z "$2" ]
then
  echo "Wrong ID" >&2
  exit 1
fi

您应该使用双引号而不是反引号

#!/bin/bash
if [ -z "$1" ] || [ -z "$2" ]
then
  echo "Wrong ID" >&2
  exit 1
fi

您使用的是
`
而不是
'
。此外,变量不会在单引号中展开,并且在变量展开后不会进行历史展开,因此您可以只使用双引号。调用此脚本时是否得到“未找到事件”?如果是这样的话,那与脚本本身无关,而是与从中运行脚本的shell有关。您使用的是
`
而不是
'
。此外,变量不会在单引号中展开,并且在变量展开后不会进行历史展开,因此您可以只使用双引号。调用此脚本时是否得到“未找到事件”?如果是这样,那与脚本本身无关,而是与运行脚本的shell有关