URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9555
[ Назад ]

Исходное сообщение
"bash mysql select "

Отправлено richit , 03-Окт-12 15:51 
Коллеги, что не так? Почему не отдает id?

#!/bin/bash

id=$(mysql -u user -pQWERT -Ne 'SET NAMES UTF8; USE db; SELECT id FROM content WHERE pagetitle LIKE "%$name%"')


Содержание

Сообщения в этом обсуждении
"bash mysql select "
Отправлено XAnder , 03-Окт-12 17:19 
> id=$(mysql -u user -pQWERT -Ne 'SET NAMES UTF8; USE db; SELECT id
> FROM content WHERE pagetitle LIKE "%$name%"')

А что такое здесь $name?


"bash mysql select "
Отправлено richit , 03-Окт-12 19:23 
>> id=$(mysql -u user -pQWERT -Ne 'SET NAMES UTF8; USE db; SELECT id
>> FROM content WHERE pagetitle LIKE "%$name%"')
> А что такое здесь $name?

Все верно, угадали ) $name - строчка из txt в dos формате с ^M на хвосте )))
Решение: tr -d "\015"
Думаю завтра dos2unix на *.txt запустить


"bash mysql select "
Отправлено Andrey Mitrofanov , 03-Окт-12 22:08 
>>> id=$(mysql -u user -pQWERT -Ne 'SET NAMES UTF8; USE db; SELECT id
>>> FROM content WHERE pagetitle LIKE "%$name%"')
>> А что такое здесь $name?
> Все верно, угадали ) $name - строчка из txt в dos формате

Он-то верно угадал, а ты - нет. Кавычки местами поменяй - двойные снаружи, одинарные внутри, тогда _баш будет переменную подставлять. //Хотя мой небольшой опыт больше по постгресу~~


"bash mysql select "
Отправлено richit , 04-Окт-12 09:19 
>>>> id=$(mysql -u user -pQWERT -Ne 'SET NAMES UTF8; USE db; SELECT id
>>>> FROM content WHERE pagetitle LIKE "%$name%"')
>>> А что такое здесь $name?
>> Все верно, угадали ) $name - строчка из txt в dos формате
> Он-то верно угадал, а ты - нет. Кавычки местами поменяй - двойные
> снаружи, одинарные внутри, тогда _баш будет переменную подставлять. //Хотя мой небольшой
> опыт больше по постгресу~~

До Ваших ай-ай довел запрос до такого вида:

"SELECT id FROM site_content WHERE MATCH (pagetitle) AGAINST (+'$name') AND tv_pubhouse LIKE '%$publisher%' AND tv_year='$year'"