2

我正在尝试比较两个包含“-”的字符串,例如:

if [[ "–change_team" == "${Args[2]}" ]]; then

其中“${Args[2]}”是“–change_team”

我试图像这样打印“–change_team”:

echo "–change_team"

我得到的是:

âchange_team

if 语句永远不会成功,我尝试用“\”转义它对我来说并不顺利。我很感激这里的任何帮助,谢谢-Emad

4

1 回答 1

2

有一些不同的 8 位图形字符可能看起来像连字符,具体取决于用于用户界面的字符。就您的if陈述而言:

if [[ "–change_team" == "${Args[2]}" ]]; then

如果我复制您的“–change_team”字符串并在此处使用它:

echo "–change_team" | od -c

我得到这个结果:

0000000 342 200 223   c   h   a   n   g   e   _   t   e   a   m  \n
0000017

如果它是一个真正的连字符,你会得到:

0000000 -   c   h   a   n   g   e   _   t   e   a   m  \n
0000017

因此,在原始脚本中,比较中使用的“连字符”字符不是正确的连字符。

于 2013-12-21T14:11:29.720 回答