Вам нужна подстановка команды, и ваша команда должна вывести строку true
или false
.
is_selected=$( if [[ $modules == *"myModule"*; then echo true; else echo false; fi)
Или поместить назначение в if
оператор:
if [[ $modules == *myModule* ]]; then is_selected=true; else is_selected=false; fi
, который имеет преимущество, заключающееся в том, что для подстановки команд не требуется подоболочка (и, вероятно, новый процесс).
Или используя предложение из комментариев, инициализируйте переменную в false, затем установите ее в true, если совпадение выполнено успешно.
is_selected=false; [[ $modules == *myModule* ]] && is_selected=true