看板 Linux 關於我們 聯絡資訊
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 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.182.117.188 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1436071291.A.A19.html
ckc1ark: 外面單引號拿掉改用"$cmd"呢 07/05 13:02
tkcn: 推薦這篇 http://goo.gl/QKiL55 07/05 13:59
yshihyu: 一樣不行 07/05 13:59
bitlife: 單引號(')拿掉呢? 07/05 14:20
kenduest: cmd="select ........ label=$i" 07/05 20:17
kenduest: mysql -h ..... -pf0409 -Bse "$cmd" > $file 07/05 20:19
chang505: 拿掉單引號就要把 cmd變成單行輸出 否則 cmd 就是陣列 07/05 21:44
dream1203: 剛試過 ken大的解法不一定要cmd是單行 07/05 22:17
danny8376: ... 有加上\就是單行啊... 07/05 23:52