Как экранировать строки в скрипте bash - PullRequest
3 голосов
/ 07 марта 2011

Я запускаю скрипт bash, который вызывает mysql.Пароль передан не правильно, я думаю, мне нужно экранировать некоторые специальные символы, такие как хэш или знак доллара?

#!/bin/bash

USER=myuser
PASS="#mypass$"

# ... call mysql

Ответы [ 2 ]

2 голосов
/ 07 марта 2011

Попробуйте использовать «\» перед персонажем, которого пытаетесь убежать.

#!/bin/bash

USER=myuser
PASS="#mypass\$"

# ... call mysql
1 голос
/ 07 марта 2011

Использование "..." уже является правильным решением, но $ необходимо экранировать (\$), если за ним не стоит "недопустимый" символ.Однако вам также необходимо убедиться, что переменная всегда указана в кавычках, например:

somecommand -p "$PASS"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...