1. 程式人生 > >shell指令碼與mongo互動

shell指令碼與mongo互動

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