Приветствую.
Нужна помощь в скрипте.#!/bin/bash
cat ./user033.txt | while read line; do
mysql -u root --password=gogogog --database=legos --execute=\'$line\'
echo mysql -u root --password=gogogog --database=legos --execute=\'$line\'
done
MySQL ругается на синтаксис командыВ user033.txt
INSERT INTO chatlog (RcvrNick, MsgText) VALUES ("sntonstv","№01681 документ не найден")Загвоздка, думаю, в кавычках и апострофах.
результат echo
mysql -u root --password=gogogog --database=legos --execute='INSERT INTO chatlog (RcvrNick, MsgText) VALUES ("sntonstv","№01681 документ не найден")'Если его скопировать и запустить в консоли, то отрабатывает нормально.
Помогите, разобраться, как это в скрипте прописать.
> Помогите, разобраться, как это в скрипте прописать.Как-то так:
#!/bin/bash
mysql -u root --password=gogogog --database=legos < ./user033.txt
>> Помогите, разобраться, как это в скрипте прописать.
> Как-то так:
> #!/bin/bash
> mysql -u root --password=gogogog --database=legos < ./user033.txtСпасибо!
А я, блин, пошел через .... )
>> Помогите, разобраться, как это в скрипте прописать.
> Как-то так:
> #!/bin/bash
> mysql -u root --password=gogogog --database=legos < ./user033.txt А откуда этот скрипт [img]http://makis.ru/uploads/posts/2013-06/1372153005_tricks-and-...
> echo mysql -u root --password=gogogog --database=legos --execute=\'$line\'
> done
> MySQL ругается на синтаксис команды
> Если его скопировать и запустить в консоли, то отрабатывает нормально.BEHOLD!
$ args() { local i=0; while(( i < ${#*})); do echo "$((++i))) >${!i}<"; done; }
$ args 1 2\ 3 4
1) >1<
2) >2 3<
3) >4<
$ list='INSERT INTO chatlog (RcvrNick, MsgText) VALUES ("sntonstv","№01681 документ не найден")'
$ args -u root --password=gogogog --database=legos --execute="$list"
1) >-u<
2) >root<
3) >--password=gogogog<
4) >--database=legos<
5) >--execute=INSERT INTO chatlog (RcvrNick, MsgText) VALUES ("sntonstv","№01681 документ не найден")<
$ _> Помогите, разобраться, как это в скрипте прописать.
Так, man bash же!! B-)