इसने मेरे लिए काम किया:
mongo --eval "var my_var = '$MY_VAR'" my_script.js
<
छोड़ दें . mongo
कमांड लाइन पर किसी भी शेष तर्क को निष्पादित/व्याख्या की जाने वाली फाइलों के रूप में संसाधित करेगा, लेकिन स्पष्ट रूप से शेल इनपुट को --eval
के साथ रीडायरेक्ट करेगा। जावास्क्रिप्ट नेमस्पेस को रीसेट करने का कारण बनता है।
मुझे लगता है लेकिन पुष्टि नहीं कर सकता कि ऐसा इसलिए है क्योंकि तर्क के रूप में पारित फ़ाइल नामों को load()
. के माध्यम से संसाधित किया जाता है तंत्र, जो https://docs.mongodb.com/v3 के अनुसार .2/संदर्भ/विधि/लोड/
, इस प्रकार व्यवहार करता है: