您好,我正在尝试从 shell 脚本运行 MySQL 查询。
mysql -u root -p'1234' -e "CREATE TABLE $DB.aa_vv_cc
(
id int(10) unsigned NOT NULL AUTO_INCREMENT,
city varchar(100) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
lat varchar(255) DEFAULT NULL,
`long` varchar(255) DEFAULT NULL,
status int(11) NOT NULL DEFAULT '1',
created_at timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
PRIMARY KEY ('id')
);"
我在“long”上遇到错误。shell 脚本中的反勾号不起作用。任何帮助将不胜感激。
反引号是Command Substitution
在壳里。
它们在双引号字符串中进行评估。
所以 shell 看到的是
`long`
在你的字符串中并尝试运行命令long
并且,大概是失败了。
你需要转义反引号
\`long\`
在双引号字符串中以防止出现这种情况(或使用不评估它们的单引号字符串)
'... `long` ...'
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)