2013-07-03 92 views
2

我有一個bash腳本,從中運行js文件,負責使用新字段更新表,如果它不存在。MongoDB:無法加載js文件

但在執行bash腳本時,出現以下錯誤。

Wed Jul 3 00:05:18 Error: error doing update (anon):1552 
failed to load: logincount.js 

這是一個簡單的js文件,該文件將更新一個名爲截至昨日userCollection表場內

var d = new Date(); 
    var curr_date = d.getDate()-1; 
    var curr_month = d.getMonth() + 1; 
    var curr_year = d.getFullYear(); 
    var yesterday = curr_year + "-" + curr_month + "-" + curr_date; 
    db.userCollection.update({yesterday : {$exists : false}}, {$set: {yesterday : yesterday}},false,true) 

請讓我知道,如果有任何不妥以上的js文件,究竟是什麼原因這個錯誤?

請指點,謝謝提前

還有一件事我已經忘了更新,如果我刪除最後一行,下面的線

db.userCollection.update({yesterday : {$exists : false}}, {$set: {yesterday : yesterday}},false,true) 

它不會抱怨什麼。我想,如果提交昨天應該是全球性的或什麼?如果是的話,我怎樣才能使該領域的全球?

+1

你是如何加載文件?你能告訴我們你在bash中使用的代碼來實際加載文件嗎? – Sammaye

+0

我的腳本文件只包含這一行mongo $ TECH_MONG_LOC/at logincount.js – Kiran

+0

切線方向,昨天可能會更清潔,如下所示:var d = new Date(); d.setDate(d.getDate() - 1); var yesterday = d.getFullYear()+「 - 」+(d.getMonth()+ 1)+「 - 」+ d.getDate()' - 您的方法將於8月1日返回「2013-8-0」。 –

回答