موصى به, 2024

اختيار المحرر

استخدام حليقة لتنزيل الملفات عن بعد من سطر الأوامر

بسم الله Official CLIP BISMILLAH Edition 2013 ARABE

بسم الله Official CLIP BISMILLAH Edition 2013 ARABE

جدول المحتويات:

Anonim
يمكن استخدام أداة سطر الأوامر القوية curl لتنزيل الملفات من أي خادم بعيد. يعرف مستخدمو سطر الأوامر منذ فترة طويلة أن ذلك قد يكون مفيدًا لمجموعة متنوعة من المواقف ، ولكن لإبقاء الأمور بسيطة ، سيجد الكثيرون أن تنزيل ملف مع حليقة يمكن أن يكون غالبًا بديل أسرع لاستخدام متصفح الويب أو عميل FTP من جانب واجهة المستخدم الرسومية نظام التشغيل Mac OS X (أو نظام التشغيل Linux). يعد هذا مفيدًا للمواقف المحلية ، ولكن هناك قيمة خاصة إذا كنت في موقف تحتاج فيه إلى تنزيل شيء ما على جهاز Mac عن بُعد عند الاتصال من خلال SSH.

لأغراض هذا الاستعراض ، سوف نركز في المقام الأول على تنزيل الملفات من بروتوكولي HTTP و SFTP اللذين يتم مصادفتهما بشكل شائع ، على الرغم من أنه يجب ملاحظة أن cURL يدعم العديد من البروتوكولات الأخرى. على الرغم من أن الضفيرة سهلة الاستخدام ، إلا أنه من المستحسن وجود معرفة بسطر الأوامر.

تحميل ملفات المطابقة التامة مع حليقة -O

باستخدام علامة كبيرة - O مع curl يقوم بتنزيل الملف من الخادم البعيد مع الحفاظ على اسم الملف الدقيق ، فإن الصيغة الأساسية لذلك هي كما يلي:

curl -O

هذا يعني أنه إذا تم تسمية ملف URL المحدد "sample.zip" فسيتم تنزيله باسم الملف "sample.zip" ، وإذا تم تسمية الملف بشيء هائل ومعقد مثل "LongExampleFileNameForOSXDaily-v-1-3-51-revision- 515b12-readme.txt "على الخادم البعيد ، سيتم حفظه بهذا الاسم الدقيق على الجهاز المحلي. غالبًا ما يتم التعامل مع أسماء الملفات الأطول باستخدام العلامة -o بدلاً من -O ، والتي سنتناولها قريبًا.

قد يتذكر القراء العاديون أننا استخدمنا الأمر curl -O عند شرح كيفية استخراج محتوى الصوت الفعلي من ملف دفق m3u.

بداية أي تنزيل باستخدام curl يُظهر النسبة المئوية المنقولة والوقت المستغرق في التنزيل والوقت المتبقي وسرعة النقل.

توفر لقطة الشاشة تمثيلًا أفضل من المثال الذي تم لصقه أدناه ، لكنها تبدو كما يلي:

% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 10505 100 10505 0 0 79741 0 --:--:-- --:--:-- --:--:-- 142k

من خلال سرعة النقل التي تظهر أنه يمكنك إعادة توجيه إخراج curl إلى / dev / null واستخدامه لاختبار سرعة اتصال الإنترنت ، ولكن الأمر wget لديه أسهل في قراءة ومتابعة شريط النقل وبالتالي فإن wget مناسب بشكل أفضل لهذه المهمة.

حفظ ملف بعيد باسم مختلف مع حليقة -o

سيسمح لك استخدام علامة صغيرة -أو بتحديد اسم ملف مختلف للملف الذي تم تنزيله عن طريقة تسمية هذا الاسم على الخادم البعيد. يمكن أن يكون ذلك مفيدًا في تقليل أسماء الملفات الطويلة أو مجرد تسمية شيء ما بحيث يسهل العثور عليه بنفسك. بناء الجملة العام سيكون:

curl -o

على سبيل المثال ، إذا كنت تريد حفظ ملف iOS IPSW وجدته مدرجًا على خوادم Apple دون أن يكون له الاسم الكامل المطول ، فيمكنك استخدام ما يلي:

curl -o iPhone5C-704.ipsw http://appldnld.apple.com/iOS7/031-1828.20131114.P3wE4/iPhone5, 3_7.0.4_11B554a_Restore.ipsw

سيؤدي هذا إلى تنزيل ملف "iPhone5،3_7.0.4_11B554a_Restore.ipsw" ، لكن اسمه أقصر باسم "iPhone5C-704.ipsw" الأكثر معنى.

إذا كنت تفضل عدم حفظ الملف في دليل العمل الحالي ، فحدد مسارًا كجزء من اسم الملف مثل:

curl -o ~/Desktop/localexample.dmg http://url-to-file/example.dmg

تنزيل ملفات متعددة بشكل متزامن مع حليقة

يمكن لـ cURL تنزيل ملفات متعددة بسهولة في نفس الوقت ، كل ما عليك القيام به هو تحديد أكثر من عنوان URL واحد مثل ذلك:

curl -O

للملفات ذات الأسماء المختلفة ، أو المستضافة على خوادم مختلفة ، أو ضمن مسارات الدليل المختلفة ، استخدم عنوان URL الكامل ، على سبيل المثال:

curl -O http://ftp.gnu.org/gnu/Licenses/fdl-1.1.txt http://ftp.gnu.org/gnu/Licenses/lgpl-2.1.txt http://ftp.gnu.org/gnu/GNUinfo/Audio/index.txt

من ناحية أخرى ، إذا كانت أسماء الملفات المراد تنزيلها تستخدم تسمية تدريجية ، فيمكنك استخدام الأقواس لتحديد نطاق التنزيل ، مثل:

curl -O http://ftp.gnu.org/gnu/Licenses/fd1-1.txt

سيؤدي هذا إلى التقاط الملفات fdl-1.1.txt و fd1-1.2.txt و fd1-1.3.txt جميعها في نفس الوقت دون الحاجة إلى تحديد كل عنوان URL فريد. بالطبع هذا يعمل فقط إذا كانت الملفات موجودة في نفس الدليل معًا وفي نفس المجال.

المصادقة مع حليقة

يمكنك أيضًا تمرير المصادقة باستخدام cURL باستخدام علامة -u:

curl -u user:pass -O ftp://remote_url/file-to-download.zip

ضع في اعتبارك أن محفوظات bash ستخزن كلمة المرور بنص عادي عند استخدام -u مع اسم مستخدم وكلمة مرور محددين ، وبالتالي لا يوصى بهذا لمعظم المواقف. يمكنك الالتفاف على ذلك من خلال وضع مسافة أمام "curl". إذا لم تستخدم مفتاح المسافة لبادئة الأمر ، فربما تحتاج إلى تفريغ محفوظات الأمر بعد ذلك لتكون آمنًا.

بروتوكولات حليقة المدعومة والاستخدام ما وراء HTTP و FTP

كما ذكرنا سابقًا ، يتجاوز استخدام cURL HTTP و FTP ، حيث يشير إدخال صفحة curl اليدوية إلى بروتوكولات إضافية في الوصف:

curl هي أداة لنقل البيانات من أو إلى خادم ، باستخدام أحد
البروتوكولات المدعومة (DICT ، FILE ، FTP ، FTPS ، GOPHER ، HTTP ، HTTPS ، IMAP ،
IMAPS ، LDAP ، LDAPS ، POP3 ، POP3S ، RTMP ، RTSP ، SCP ، SFTP ، SMTP ، SMTPS ،
TELNET و TFTP).

بالإضافة إلى ذلك ، ستجد أنه يمكن أيضًا استخدام حليقة لطلبات PUT و POST وملفات تعريف الارتباط والوكلاء والأنفاق وتنزيلات السيرة الذاتية وحتى الحصول على معلومات رأس HTTP أو تغيير وكيل مستخدم (خداع فعال) دون الحاجة إلى استخدام صفحة ويب مخصصة المتصفح.

مثل معظم الأدوات المساعدة لسطر الأوامر ، يمكنك معرفة المزيد حول curl عن طريق استدعاء صفحة man المناسبة مع الأمر "man curl".

Top