您的位置:首页 > 数据库 > Mongodb

ubuntu使用命令mongoimport插入大批量json数据到mongodb时,遇到转义字符出错解决办法

2016-08-27 13:42 615 查看
插入过程出错了,遇到转义字符就中断插入,转义字符有\r \t \b

我用python写了一个脚本来删除,替换转义字符 文件名是delch.py 

import sys
infile = sys.argv[1]

def delete_char(s, c):
parts = s.split(c)
return ''.join(parts)

with open(infile) as f:
for line in f:
line = delete_char(line, "\x08")  #退格键 backspace
#line = line.replace("\\", "/") #替换\\成/
sys.stdout.write(line)



然后使用命令将多个文件重定向到ok.json文件

#!/bin/bash

dir="/mnt/disk1/sftp/inman/upload/myjson"
for f in `ls ${dir}`;do
[[ $f =~ "ysf_auction_platform" ]] && echo $f python delch.py  $f >> ok.json
done

然后使用命令插入ok.json文件

mongoimport --db sharkCloud_57bc39d80cf24fe9a53e989f --collection crm_plt_taobao_product --file /mnt/disk1/sftp/inman/upload/ok.json  --host 10.170.159.142:3717 --authenticationDatabase=cloudUsers -u inman -p urNz8LD0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: