Я пытаюсь сравнить две строки, которые идентичны, как я могу видеть в журнале отладки следующие строки:Сравнивая длинные строки с пробелами
echo "line: $line"
echo "fingerPrints:$i ${fingerPrints[$i]}"
31 + echo 'line: DCD0 5B71 EAB9 4199 527F 44AC DB6B 8C1F 96D8 BF6D'
32 + echo 'fingerPrints:1 DCD0 5B71 EAB9 4199 527F 44AC DB6B 8C1F 96D8 BF6D'
Но когда я пытаюсь линию после того, как для сравнения тех, струнные,
if ["$line" ne "${fingerPrints[$i]}"]; then
это то, что происходит:
33 + '[DCD0 5B71 EAB9 4199 527F 44AC DB6B 8C1F 96D8 BF6D' ne
'DCD0 5B71 EAB9 4199 527F 44AC DB6B 8C1F 96D8 BF6D]' ./gentoo-stage.sh:
line 33: [DCD0 5B71 EAB9 4199 527F 44AC DB6B 8C1F 96D8 BF6D: command not found
Я не пытаюсь проверить, если одна строка содержит уплотнительное они просто, если они эукал.
Те же результаты, когда я пытаюсь использовать !=
вместо ne
.
Возможный дубликат [Как сравнить две строковые переменные в инструкции «if» в Bash?] (Http://stackoverflow.com/questions/4277665/how-do-comcompare-two-string-variables -в-ан-Условный оператор-в-Баш) –