从mongoDB中定时导出数据shell脚本

前端之家收集整理的这篇文章主要介绍了从mongoDB中定时导出数据shell脚本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

下面是编程之家 jb51.cc 通过网络收集整理的代码片段。

编程之家小编现在分享给大家,也给大家做个参考。

#!/bin/bash
#创建保存目录
mypath=micAnalyDir/`date +%Y/%m%d`
mkdir -p $mypath

#计算过滤时间
baseDate=`date --date '1 months ago' +'%m/01/%Y'`
echo $baseDate
declare -i baseTime
baseTime=$((`date --date "$baseDate" +"%s"` * 1000))

#导出指定数据表中的数据
function exportData() {
   exportCmd="/kingdee/mongodb/bin/mongoexport --csv"
   if [ $# -gt 3 ]; then
#这里要注意baseTime和endTime不能加引号,否则会报错
        $exportCmd -d $1 -c $2 -f $3 -q \
 "{\"$4\":{\"\$gte\":{\"\$date\":$baseTime},\
        \"\$lt\":{\"\$date\":$endTime}}}" -o $mypath/$2.csv
   else
        $exportCmd -d $1 -c $2 -f $3 -o $mypath/$2.csv
   fi
}

#导出第一张表的所有数据
echo export data from $baseDate
echo 'export ossDev.T_User'
fields="_id,email,registerDate,photoId"
exportData "ossDev" "T_User" $fields

#导出第二张表的sendTime为当月和上月的数据
echo 'export snsDev.T_Comment'
fields="_id,del,from,mbId,mbOwner,nwId,ownerId,sendTime"
exportData "snsDev" "T_Comment" $fields "sendTime"

以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

猜你在找的Shell相关文章