Я написал скрипт для подключения к базе данных MongoDB для получения информации и вставки ее через запрос curl
в другую базу.Когда это сделано, скрипт записывает в файл .txt
вставленные идентификаторы.Когда я снова запускаю скрипт, файл .txt
загружается для импорта только идентификаторов, которых нет в файле .txt
Но Монго не покажет мне результаты, когда я попытаюсь установить для параметров $nin
значениезагрузить, только строки не в .txt
файлах.
Ниже мой тестовый скрипт:
#!/bin/bash
filter=$(<personKey.txt)
filter="$(echo $filter|sed -e 's/ /'\'','\''/g')"
filter="$(echo $filter|sed -e s/^/\'/ -e s/$/\',/)"
filter=${filter%?}
echo $filter
echo "db.getCollection('persons').find({'documents.document.personKey': {'\$nin':[${filter}]}},{'documents.document.personKey':1,'documents.document.watchlistKey':1,'documents.document.first_name':1})"
QueryResult=`mongo $IP_MONGO:$PORT_MONGO/MyBase -u "username" -p "Password" --quiet --eval "db.getCollection('person').find({{'documents.document.personKey': {'\$nin':[${filter}]}},{'documents.document.personKey':1,'documents.document.watchlistKey':1,'documents.document.first_name':1})"`
echo ${QueryResult}