wget هي أداة مساعدة لسطر الأوامر غير تفاعلية لموارد التنزيل من عنوان URL محدد. نظرًا لأنها غير تفاعلية ، يمكن أن تعمل wget في الخلفية أو قبل أن يسجل المستخدم الدخول. تم تصميم الأداة خصيصًا للوصلات الضعيفة ، مما يجعلها قويةً بشكل خاص في ظروف غير مستوية. في حين لا يتم شحن wget مع macOS ، يمكن تنزيلها وتثبيتها بسهولة باستخدام Homebrew ، أين يتوفر أفضل مدير لحزم Mac.
روابط سريعة
1. قم بتنزيل وتثبيت Homebrew
لتثبيت برنامج Homebrew ، افتح نافذة Terminal وقم بتنفيذ الأمر التالي مأخوذ من موقع Homebrew على الويب:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
قد تلاحظ الأمر المسمى curl
، وهو عبارة عن أداة مساعدة لسطر الأوامر مختلفة لتنزيل الملفات من عنوان URL المتوفر داخل تثبيت Ruby المتضمن في macOS.
2. تثبيت wget
وبمجرد انتهائه من تثبيت نفسه ، سنستخدم برنامج Homebrew لتثبيت wget. في Terminal ، قم بتشغيل الأمر التالي لتنزيل wget وتثبيتها:
brew install wget
ستحصل على تحديثات مباشرة حول التقدم في تنزيل وتثبيت أي تبعيات (متطلبات البرامج) مطلوبة لتشغيل wget على نظامك.
إذا كنت قد قمت بالفعل بتثبيت برنامج Homebrew ، فتأكد من تشغيل brew update
للحصول على أحدث نسخ من جميع صيغك.
3. استخدام wget
الغرض من wget هو تنزيل محتوى من عناوين URL. إنها أداة غير تفاعلية سريعة وبسيطة لتنزيل الملفات من أي عنوان URL يمكن الوصول إليه بشكل عام.
قم بتنزيل ملف واحد
مثل curl الأمر المماثل ، تأخذ wget موردًا بعيدًا من عنوان URL وتحفظه إلى موقع محدد على جهاز الكمبيوتر الخاص بك. يعمل هيكل التحكم على النحو التالي:
wget -O path/to/local.copy http://example.com/url/to/download.html
سيؤدي ذلك إلى حفظ الملف المحدد في عنوان URL إلى الموقع المحدد على جهازك. إذا تم استبعاد علامة -O
، فسيتم تنزيل عنوان URL المحدد إلى دليل العمل الحالي.
تنزيل دليل بشكل متكرر
لتنزيل شجرة دليل كاملة باستخدام wget ، تحتاج إلى استخدام العلامات -r
/ --recursive
و -np
/ --no-parent
، مثل:
wget -e robots=off -r -np https://www.w3.org/History/19921103-hypertext/hypertext/
سيؤدي ذلك إلى wget لمتابعة أي ارتباطات موجودة في المستندات داخل الدليل المحدد ، وتكرار تنزيل مسار URL المحدد بالكامل.
يتضمن هذا الأمر أيضًا -e robots=off
، والذي يتجاهل القيود في ملف robots.txt. بشكل عام ، من المفيد تعطيل ملف robots.txt لمنع التنزيلات المختصرة.
استخدامات أخرى لـ wget
بالإضافة إلى الأعلام أعلاه ، تعد هذه الأعلام المختارة من wget مفيدة للغاية:
السيطرة على التحميل
wget -X /absolute/path/to/directory
سيتم استبعاد دليل محدد على الخادم البعيد.
wget -nH
يزيل أدلة اسم المضيف. تذكر أن اسم المضيف هو جزء من عنوان URL الذي يحتوي على اسم النطاق وينتهي في TLD مثل “.com”. على سبيل المثال ، سيتم تخطي المجلد المسمى “www.w3.org” في المثال السابق ، بدء التنزيل مع دليل “التاريخ” بدلا من ذلك.
wget --cut-dirs=#
يتخطى العدد المحدد من الدلائل أسفل عنوان URL قبل البدء في تنزيل الملفات. على سبيل المثال ، قد يغير -nH --cut-dirs = 1
المسار المحدد لـ “ftp.xemacs.org/pub/xemacs/
” إلى ببساطة “/xemacs/
” ، مما يقلل من عدد الدلائل الفرعية الفارغة في التنزيل المحلي.
wget -R index.html/wget --reject index.html
سيتم تخطي أي ملفات تطابق اسم الملف المحدد. في هذه الحالة ، سيتم استبعاد جميع ملفات الفهرس. يمكن استخدام الرمز *
كحرف بدل ، مثل “* .png
” ، والذي يمكنه تخطي كل الملفات بامتداد PNG.
يحدد ملف wget -i
عناوين URL الهدف من ملف إدخال. يجب أن يكون ملف الإدخال عبارة عن ملف HTML أو يتم تحليله بتنسيق HTML مع العلم --force-html
wget -nc/
wget --no-clobber
– لا يقوم باستبدال الملفات الموجودة بالفعل في الوجهة.
سيتابع wget -c/wget --continue
تنزيل الملفات التي تم تنزيلها جزئيًا.
سيحاول wget -t 10
تنزيل المورد حتى 10 مرات قبل الفشل.
ضبط مستوى التسجيل
يمكّن wget -d
إخراج التصحيح.
يمكّن wget -o path/to/log.txt
إخراج التسجيل إلى الدليل المحدد بدلاً من عرض الإخراج القياسي لتسجيل الدخول.
يعمل wget -q
على إيقاف تشغيل كل مخرجات wget ، بما في ذلك رسائل الخطأ.
يتيح wget -v
بشكل صريح الإعداد الافتراضي لـ wget للإنتاج المطوّل.
wget --no-verbose
يقوم بإيقاف تشغيل رسائل السجل ولكن يعرض رسائل خطأ.
الخلاصة
في حين أن هذا يجب أن يغطي غالبية حالات استخدام wget ، فإن برنامج التحميل قادر على أكثر من ذلك بكثير. للحصول على وصف كامل لإمكانيات wget ، يمكنك مراجعة صفحة رجل يعمل على wget في GNU عبر الإنترنت.