سؤال

أنا أعمل على برنامج نصي بسيط بيثون بسيطة للقيام ببعض المهام البسيطة على النظام. بعض هذا العمل ينطوي apt-get install لتثبيت بعض الحزم.

في حين أن هذا يحدث، أريد عرض شريط التقدم الذي يجب تحديثه مع تقدم التنزيل، باستخدام النسبة المئوية قليلا موضحة في واجهة APT-GET في المحطة.

لكن! لا يمكنني العثور على طريقة للحصول على معلومات التقدم. أنابيب أو إعادة توجيه إخراج APT - احصل فقط على خطوط ثابتة تظهر رسالة "الانتهاء" رسالة لكل حزمة، ونفسها للقراءة عبر subprocess.Popen() في النصي الخاص بي.

كيف يمكنني أن أقرأ من إخراج APT-GET للحصول على النسب المئوية التي تم تنزيلها؟

هل كانت مفيدة؟

المحلول

كما قلت في كثير من الأحيان، استخدم pexten, ليس إلخ، تشغيل العمليات الفرعية عندما تحتاج إلى إخراجها المستمر. يكمل PEXPENPRESSPRESSPRESS في الاعتقاد بأنه يعمل على محطة، لذلك سيوفر الإعالة الفرعية نوع الإنتاج فقط من شأنه أن يعطي على محطة حقيقية ... ويمكنك التقاطه وتحويله إلى أي نوع من الناتج يتوهم تريد! - في

نصائح أخرى

بدلا من تحليل إخراج APT-GET، يمكنك استخدام Python-Apt لتثبيت الحزم. AFAIK لديها أيضا وحدات للإبلاغ عن التقدم المحرز.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top