Я довольно новичок в написании сценариев bash, поэтому я не знаю, что делать с sed, awk или любым другим инструментом сценариев bash.Моя проблема: я должен запустить скрипт sh, который принимает один параметр.Из-за некоторых специфических характеристик мы не можем предложить какие-либо входные данные командной строки для проверки или изменения любой опечатки.Я хотел бы, чтобы слово, записанное в параметре, было исправлено путем сравнения его с именами подпапок, находящихся в точной папке.И поэтому имя подпапки с написанием, наиболее похожим на параметр, приходит на смену начальному параметру.Короче говоря, если параметр хорошо написан и поэтому выглядит как 100% как имя подпапки, тогда хорошо, в противном случае выполните тест на подобие.Вот фактический скрипт bash:
#!/bin/bash
set -e
set -o pipefail
if [ -z "${STACK_NAME}" ]; then
echo "Error: Missing some parameters"
exit 1
fi
ansible-playbook -vv \
-e 'ansible_python_interpreter="/usr/bin/env python"' \
-i inventories/${STACK_NAME}
Папка с подпапками выглядит следующим образом:
Запасы (основная папка)
- docker-stg
- es-мониторинг
- производство
- разработка
- проверка
Поэтому, если я введу команду для запуска сценария sh:
sh script.sh monitoring
Иликоманда:
sh script.sh monit
или:
sh script.sh esmonit
В каждом случае сценарий должен принимать параметр и фактически использовать "es-мониторинг" Спасибо за вашеПомогите.С наилучшими пожеланиями