Оператор -eq
предназначен для математических выражений, но вы сравниваете строки.
Чтобы сравнить строки, используйте =
.
Я чувствую себя очень глупо.
Моя команда выполняется таким образом mycommand -f "a","b"
. Если я запускаю его без двойных кавычек -mycommand -f a,b
-, он не работает.
По этой причине я добавил экранированные двойные кавычки в переменную:p="\"a a\",\"b\""
.
Я должен быть более точным, у меня есть пробел, а настоящая команда mycommand -f "a a","b"
.
Я узнал и что я должен изучить :нет необходимости добавлять кавычки в качестве значения переменной, bash делает все правильно и волшебно для меня.
Я поставил p="a a,b"
, и тогда я могу просто запуститьmycommand -f "$p"