shell指令碼與mongo互動
阿新 • • 發佈:2018-12-24
mongo提供*.js的方法供linux呼叫
/usr/local/mongodb/bin/mongo hostname/dbname xxx.js
xxx.js
db.getCollection('CollectinName').drop();
db.getCollection('CollectinName').insert([
{
"id":"100",
"name":"luyi"
},
{
"id":"200",
"name":"wanger"
}
]}
但是這個種方式,linux shell不能動態的把外部的引數傳到mongo的js指令碼。
可以用下面的方式,把引數傳到mongo命令中:
DSID=$1
# db.${CollectionName}.remove({"id":"100"})
/usr/local/mongodb/bin/mongo ${hostname}/${dbname} <<-EOF
db.DataTable.remove({"dsId":"$DSID"})
db.Datasource.remove({"dsId":"$DSID"})
exit
EOF