Попытка проанализировать строку в BASH на предмет

Попытка проанализировать строку в BASH на предмет

У меня есть скрипт BASH, который позволяет пользователю указать имя задания. Сейчас мы исключаем все. Мы передаем это имя задания другому исполняемому файлу, который может принимать только следующие форматы:

job_name, jobname, job-name, job_name1, job-name1, job_name[1-5] job-name[1-5] или jobname[1-5] или другие перестановки, которые являются буквенно-цифровыми (чувствительны к регистру) и [, ], _, -

Я ищу способ перехватить имя и отклонить все, что не следует этому формату. Начал пытаться использовать регулярное выражение с оператором if, но [], похоже, ставит меня в тупик.

решение1

if [[ $1 =~ [']_-['] ]]; then
   echo "I have the Square Braces"
fi

Связанный контент