كيف يمكنني تعيين دليل مؤقت للتنزيلات غير المكتملة في Wget؟

StackOverflow https://stackoverflow.com/questions/506283

  •  21-08-2019
  •  | 
  •  

سؤال

أحاول عكس الملفات على خادم FTP.يمكن أن تكون هذه الملفات كبيرة جدًا لذا قد تتم مقاطعة التنزيلات.أرغب في الاحتفاظ بالملفات الأصلية أثناء تنزيل الملفات الجزئية إلى مجلد مؤقت وتجاوز الإصدارات القديمة المحلية بمجرد الانتهاء.

  1. هل يمكنني فعل هذا؟كيف؟
  2. هل هناك أداة أخرى سهلة الاستخدام (سطر الأوامر) يمكنني استخدامها؟
هل كانت مفيدة؟

المحلول

بالنظر إلى دليل wget، لا أستطيع رؤية هذه الوظيفة، ومع ذلك يمكنك كتابة برنامج نصي bash للقيام بما تريد، والذي سيؤدي بشكل أساسي إلى تشغيل wget فردي لكل ملف ثم نقله باستخدام أمر mv العادي.

بدلاً من ذلك، قم بإلقاء نظرة على rsync وفقًا لـ يدوي هناك معلمة تحدد درجة الحرارة dir

-T  --temp-dir=DIR          create temporary files in directory DIR

لست متأكدًا بنسبة 100% من أن هذا هو المكان الذي يتم فيه وضع الملفات أثناء التنزيلات حيث لم تتح لي الفرصة لتجربتها.

نصائح أخرى

أولاً، قم بتنزيل الملفات إلى دليل مؤقت.استخدم -c حتى تتمكن من الاستئناف.

بعد اكتمال التنزيل، استخدم النسخ أو إعادة التسمية أو rsync لنسخ الملفات إلى المكان النهائي.

ملحوظة:فكر في استخدام rsync للعملية بأكملها لأنه تم تصميمه لحالة الاستخدام هذه فقط وسيسبب ضغطًا أقل بكثير على الخادم والإنترنت.يشعر معظم مسؤولي الموقع بالسعادة إذا طلبت منهم الوصول إلى rsync لهذا السبب فقط.

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