我們可以直接從Perl運行Java腳本來從MongoDB獲取數據嗎?使用Perl的Mongo DB JavaScript
假設我現在的JS文件是: -
DBQuery.shellBatchSize = 194127180 ;
permissibleCars =
["C:93124617:54413209463","C:93124633:54413165206","C:93124634:54413165224"]
db.getCollection('Test').aggregate([
{$match:
{ "methods.name": "Download",
"methods.status": "ACTIVE",
container: {"$in": permissibleCars},
entitlementClass : "Download"
} },
{"$group" : {_id:"$container", count:{$sum:9}}}
],
{ allowDiskUse: true}
);
一般來說,當我們運行殼/ bash的,我們運行: -
mongo hostname:portnumber/db_name - user_name -p password <filename.js> output_file.txt
但我不知道怎麼辦好呢使用perl。
有人可以幫助我嗎?我通過文檔閱讀沒有看到任何東西與Perl的JS。
問候
沒有什麼能阻止你從Perl中脫殼而出,並運行該命令。你也可以使用https://metacpan.org/pod/JavaScript或其他類型的程序來執行你的東西,但我不會推薦它。您可以使用Mongo API的Perl實現來構建您在JS文件中執行的所有操作。如果你的程序的其餘部分是用Perl編寫的,你應該可以這麼做,而不是一些奇怪的混合體。 – simbabque
所以,同樣的JS會工作還是我需要更改JS fornat? – user2854333
請重新閱讀我的評論。答案是_yes,它會工作_和_no,你需要重寫它。這取決於你如何實現它。答案是_yes_的實現很容易出錯,很難並且可能難以維護。但是當你重寫它時,你首先需要學習如何做到這一點。從長遠來看,一致性應該有更高的價值。 – simbabque