免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3081 | 回复: 5
打印 上一主题 下一主题

awk 脚本生成sql 通过管道导入mysql 可以实现么? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-12-27 10:04 |只看该作者 |倒序浏览
  1. #!/bin/sh

  2. yesterday=$(date -d"yesterday" +%Y-%m-%d)
  3. echo $yesterday
  4. basedir="/tmp/"
  5. filename=$basedir"dispacher.log."$yesterday

  6. if [ -e $filename ]; then
  7.   echo  "文件存在!"
  8.   awk -v strdate=$(date -d"yesterday" +%Y%m%d) -F"|" 'BEGIN{OFS = ","}{a[$6]++;}{if(!c[$6,$4]++){b[$6]++}}END{for(i in a) {print "replace into f_stat_day set total_brower="a[i]",total_user="b[i]",crt_time=now(),stat_date="strdate",local_code="i";" }}' $filenam > mysql -uroot -p123456 test

  9. else
  10.   echo  "文件不存在!"
  11. fi
复制代码


不知道awk生成的sql如何导入到mysql中,请赐教!

论坛徽章:
0
2 [报告]
发表于 2006-12-27 18:06 |只看该作者
有人做过这方面的试验么?

论坛徽章:
0
3 [报告]
发表于 2006-12-27 18:21 |只看该作者
在oracle 下用过
echo "select ...;exit;"|sqlplus -s user/passwd@dblink
mysql没用过,不知道了

论坛徽章:
0
4 [报告]
发表于 2006-12-30 11:35 |只看该作者
MYSQL:mysql -e ...

论坛徽章:
0
5 [报告]
发表于 2006-12-30 11:36 |只看该作者
[root@localhost bin]# more sql.sh

a=abc@125.com
./mysql -pasdf123-e "update abc.tab_user set email='$a' where userid='test01';"

[root@localhost bin]#

论坛徽章:
0
6 [报告]
发表于 2006-12-30 12:15 |只看该作者
先把awk的重定向到tbname.txt文件中,然后mysqlimport -u root -p -d --fields-terminated-by=" ", --fields-enclosed-by=" "  dbname  -L  path\tbname.txt

path一定要写上绝对路径,没有path会报错 -L可以省略
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP