Tamim Fahed نشر 23 يونيو 2021 أرسل تقرير نشر 23 يونيو 2021 أقوم باستعلام من خلال find ولكن النتيجة كبيرة جداً. فهل يوجد طريقة استطيع من خلالها حفظ نتيجة الاستعلام ضمن ملف بدلاً من إظهارها ضمن موجه الأوامر ؟ مع إمكانية إضافة الخاصية pretty للنتيجة. اقتباس
0 Sam Ahw نشر 23 يونيو 2021 أرسل تقرير نشر 23 يونيو 2021 بما أن محرر الأوامر في mongodb تفاعلي يمكنك إجراء الأوامر التالية: mongo dbname << EOF > output.json db.collection.find().pretty() EOF أو بإمكانك الاستفادة من جافاسكريبت لأخذ نتيجة find وتحويلها إلى JSON: mongo dbname mongoCommands.js > output.json بعد أن يتم وضع الأمر ضمن الملف mongoCommands.js كالتالي: printjson( db.collection.find().toArray() ) 1 اقتباس
0 Wael Aljamal نشر 23 يونيو 2021 أرسل تقرير نشر 23 يونيو 2021 يمكن تمرير ناتج تنفيذ تعليمة mongo باستخدام tee: mongo | tee somefile tee مسؤولة عن إعادة توجيه الخرج redirect output كما يمكن استخدام الدالة writeFile مباشرة: > writeFile("/home/for/output.txt", tojson(db.myCollection.find().toArray())) ^^^^^^^^^^ الاستعلام اقتباس
0 عبدالله عبدالرحمن11 نشر 23 يونيو 2021 أرسل تقرير نشر 23 يونيو 2021 يمكنك إستخدام التالي من موجه الأوامر mongo 127.0.0.1/db --eval "var c = db.collection.find(); while(c.hasNext()) {printjson(c.next())}" >> test.txt بإفتراض أن قاعدة البيانات لديك تسمى db وتعمل على المُضيف المحلي localhost ومجموعة تسمى collection ، هذا سيقوم بتصدير نتائج الإستعلام الى ملف test.txt إذا كان لديك script أطول وتريد تنفيذه فيمكنك إنشاء ملف script.js وإستخدام mongo 127.0.0.1/db script.js >> test.txt وهذه طريقة أخرى mongoexport --db products --collection clicks --query '{"createdInt":{$gte:20190101}, "clientId":"123", "country":"ES"}' --out clicks-2019.json اقتباس
السؤال
Tamim Fahed
أقوم باستعلام من خلال find ولكن النتيجة كبيرة جداً.
فهل يوجد طريقة استطيع من خلالها حفظ نتيجة الاستعلام ضمن ملف بدلاً من إظهارها ضمن موجه الأوامر ؟ مع إمكانية إضافة الخاصية pretty للنتيجة.
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.