
У меня есть скрипт 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