【发布时间】:2013-08-09 02:36:09
【问题描述】:
我正在尝试使用 GNU/Linux 上的 BASH 脚本将一些数据发送到远程 MySQL 数据库,但出现各种错误。这是行不通的行:
mysql --host=192.168.0.100 --user=petercapaldi --password=mypassword mystartrekcharacterbase << EOF
INSERT into myfourlegs values ('$PERSON','$THETIME','$THETIME','$THEDATE','$DAYOFWEEK');
EOF
还有这个(以防万一):
mysql --host=192.168.0.100 --user=petercapaldi --password=mypassword mystartrekcharacterbase << EOF
INSERT into myfourlegs values (\047$PERSON\047,\047$THETIME\047,\047$THETIME\047,\047$THEDATE\047,\047$DAYOFWEEK\047);
EOF
【问题讨论】:
-
你可以试试反引号吗?例如
\`$PERSON\` -
@shellter 这只是一个本地IP地址。我认为这对他来说并不重要。
-
这是一个假的本地 IP,我只是把字符弄脏了一点 :) 现在解决了这个问题,我是个白痴,错过了数据库中的 ID。单引号打印为他们应该(即变量用引号打印出来)
标签: mysql sql bash variables heredoc