通过unix shell脚本Mysql插入语句

标签 mysql shell unix

filenname="/home/sxxxx/lob.oaxxx"
while read a b 
do
    mdate=$(date -d "$b" +'%s')
    system_todate=$(date +'%s')
    ((diff=$system_todate-$mdate))
    days=`echo "$diff/86400" | bc`
    echo "$(date +%Y-%m-%d) $a $b $days"
$mysql -e "insert into dataStagDatabase.dataStagTable (as_on_date, hdfs_location, last_modified, no_of_days) values (STR_TO_DATE('$(date +%Y-%m-%d)','%Y-%m-%d'), '$a', STR_TO_DATE('$b', '%Y-%m-%d' )", '$days');" -u root  
done < "$filenname"
<小时/>

我收到以下错误,我尝试以各种方式修改插入语句,但无法成功。 请帮忙

oaisys_datastag.sh: line 19: syntax error near unexpected token `)'
oaisys_datastag.sh: line 19: `mysql -e "insert into dataStagDatabase.dataStagTable (as_on_date, hdfs_location, last_modified, no_of_days) values (STR_TO_DATE($(date +%Y-%m-%d),'%Y-%m-%d'), $a, STR_TO_DATE($b, '%Y-%m-%d' )", $days);" -u root  '

最佳答案

在倒数第二行,有一个开头 " 和两个结尾 "。让你的报价保持一致,并将它们适本地配对。 – 保罗·L

关于通过unix shell脚本Mysql插入语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37281066/

相关文章:

bash - 如何正确嵌套 Bash 反引号

linux - 在输出文件上运行脚本

c - 如何使用 mmap 文件映射变量

linux - 我对以下示例的重定向操作持怀疑态度

mysql - 使用 TFDConnection 以编程方式设置 "Server"

php - 如何使用 PHP 和 html 修复表格的显示

php - mysql_real_escape_string() 说用户访问被拒绝 'drrifae' @'localhost'

regex - 将文件中的空行与 'grep' 匹配

linux - bash shell : How to parse file names

mysql - 删除mysql表中的重复对