Страница 1 из 1

Как передать параметр в sql-запрос в shell-скрипте?

Добавлено: 2008-04-17 9:17:13
skeletor
Есть запрос :

Код: Выделить всё

select * from TABLE_NAME where FIELD_NAME like '%pattern%'
[code]
который я хочу запихнуть в скрипт. И главная проблема в том, что не могу передать параметр pattern в скрипт. То есть, содержимое скрипта
[code]
#!/bin/sh
mysql DB_NAME -u root -pPASSWORD -e "select * from TABLE_NAME where FIELD_NAME like '%$1%'"
[code]
Запускаю скрипт так
[code]
./mscript user
Но, запрос выполняется с ошибками из-за того, что нельзя передать параметр $1 в запрос mysql. Одинарные кавычки этому препятствуют. Подскажите, как можно передать параметр ну или какие-нибудь идеи. Уже пробовал экранировать одинарные кавычки, но то ошибка вылазит, то пустой ответ выдаёт на запрос.
Если делать честно, а именно : зайти в mysql и там выполнить нужный запрос, то всё ок.

Re: Как передать параметр в sql-запрос в shell-скрипте?

Добавлено: 2008-04-17 9:20:53
squid

Код: Выделить всё

echo "select * from TABLE_NAME where FIELD_NAME like '%$1%'" | mysql db_name -uuser -ppassword

Re: Как передать параметр в sql-запрос в shell-скрипте?

Добавлено: 2008-04-17 10:22:40
skeletor
Спасибо, работает.