Задать вопрос
@shevlyakovn

Как экранировать символы в пароле в скрипте bash?

Хочу написать простой скрипт с исползованием bash для восстановления пароля, есть строка

echo `mysql -u$LOGIN_NAME -p$LOGIN_PASSWD $DB_NAME < backup/$DB_NAME.sql`;

Дело в том что некоторые базы не восстанавливаются т.к. переменная пароль может иметь символы &,$ и т.д. Тоесть мне нужно что бы подобный пароль 23@&@%82 превращался в 23@\&@\%82

В моем случаи команда отправляется в скрипте отправляется такая
mysql -uNAME -p23@&@%82 DB_NAME < backup/DB_NAME.sql

а надо
mysql -uNAME -p23@\&@\%82 DB_NAME < backup/DB_NAME.sql
  • Вопрос задан
  • 5442 просмотра
Подписаться 3 Оценить Комментировать
Решения вопроса 1
pavlinux
@pavlinux
'echo `mysql -u"$LOGIN_NAME" -p"$LOGIN_PASSWD" "$DB_NAME" < backup/"$DB_NAME.sql"`;
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы