问题描述
我的mongoDB中有30个DB,每个DB有4个集合。该结构可以在下面的照片中可视化-
Here
现在,我不得不遍历IP列表并将结果存储在csv文件中。以下是我使用的代码
CSV的格式为DATE,TIME,ASN,PREFIX,FREQUENCY
PREFIX_file=AS9498_IPs # file with the prefixes to be searched
ASN=AS9498 # ASN of the organisation
for prefix in $(cat ${PREFIX_file})
do
for DATE in {20191201..20191230}
do
for TIME in {0600,1000,1600,2000}
do
echo -n "${DATE},${TIME},${ASN},${prefix}," >> ${ASN}_database.csv
mongo --quiet --eval "db.getCollection('${TIME}').find({ PREFIX: '${prefix}' }).count();" ${DATE} >> ${ASN}_database.csv
done
done
echo "0,0" >> ${ASN}_database.csv # separator for new prefix
echo "Done for ${prefix}"
done
当我运行此脚本时,它可以很好地工作并且得到了预期的结果。但是我希望它在后台运行并与终端分离,因为我正在通过SSH在远程服务器上运行它,而且要搜索的前缀数量很大,因此大约需要一天的时间。
现在,当我使用nohup ./script.sh &
时,出现一个异常错误-
{20191201..20191230},{0600,2000},AS9829,117.194.16.0/20,Error: couldn't connect to server {20191201..20191230}:27017,connection attempt failed: HostNotFound: Could not find address for {20191201..20191230}:27017: SocketException: Host not found (authoritative) :
connect@src/mongo/shell/mongo.js:374:17
@(connect):3:6
exception: connect failed
exiting with code 1
我不明白这是怎么回事...
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)