[问题] mysql 使用 shell script问题

楼主: yshihyu (yshihyu)   2015-07-05 12:41:26
https://gist.github.com/anonymous/678d384c050a0012559c
cmd="'select test_seq, year, month, day, hour, minute, name,\
hop_no, test1_hop, test1_RTT, test2_hop, test2_RTT, test3_hop, \
test3_RTT, usr_id from dmp.temp_table where label=$i'"
mysql -h localhost -u root -pf0409 -Bse $cmd > $file
为什么拆成这样不行 , echo $cmd 印出来的 mysql command 没问题 , 但是就是失败
必须改成下面写法才可以请问这是什么原因?
mysql -h localhost -u root -pf0409 -Bse "select test_seq, year, month, \
day, hour, minute, name, hop_no, \
test1_hop, test1_RTT, test2_hop, \
test2_RTT, test3_hop, test3_RTT, \
usr_id from test.temp_table where label=$i" > $file
谢谢
作者: ckc1ark (伪物)   2015-07-05 13:02:00
外面单引号拿掉改用"$cmd"呢
作者: tkcn (say)   2015-07-05 13:59:00
楼主: yshihyu (yshihyu)   2015-07-05 13:59:00
一样不行
作者: bitlife (BIT一生)   2015-07-05 14:20:00
单引号(')拿掉呢?
作者: kenduest (小州)   2015-07-05 20:17:00
cmd="select ........ label=$i"mysql -h ..... -pf0409 -Bse "$cmd" > $file
作者: chang505 (眼线)   2015-07-05 21:44:00
拿掉单引号就要把 cmd变成单行输出 否则 cmd 就是阵列
作者: dream1203 (小叮当)   2015-07-05 22:17:00
刚试过 ken大的解法不一定要cmd是单行
作者: danny8376 (钓到一只猴子@_@)   2015-07-05 23:52:00
... 有加上\就是单行啊...

Links booklink

Contact Us: admin [ a t ] ucptt.com