我想通过传递它作为命令行参数来比较*作为文字

时间:2010-02-23 11:56:17

标签: shell

我通过plink从windows机器中删除了一个shell脚本。 我想将“*”(作为命令行参数传递)与我脚本中的文字进行比较。 任何人都可以建议我比较*作为文字的方式吗? 我尝试了所有可能的方法,例如在双引号,单引号,[]中包含1美元。

3 个答案:

答案 0 :(得分:4)

它是由shell扩展的,所以你必须用引号或转义将它传递给脚本:

echo '*'
echo "*"
echo \*

答案 1 :(得分:2)

它应该不是问题,脚本:

#! /bin/bash

if [[ "$1" == '*' ]]
then
  echo EQ
else
  echo NE
fi

执行:

./aaa.bash '*'

答案 2 :(得分:0)

你的问题是你需要引用常量*,而不是你要比较它的参数。