مثال استفاده از فرمان Linux curl

در این راهنما، نشان داده خواهد شد که چگونه از دستور فرمان برای دانلود فایل ها و صفحات وب استفاده کنید. اگر میخواهید بدانید چه curl و چه زمانی باید از wget استفاده کنید، این صفحه را بخوانید.

فرمان curl می تواند برای انتقال فایل ها از طریق تعدادی از فرمت های مختلف از جمله http، https، ftp و حتی smb استفاده شود.

این راهنما به شما نحوه استفاده از دستور را نشان می دهد و شما را به تعدادی از سوئیچ ها و ویژگی های کلیدی معرفی می کند.

استفاده از دستور فرمان پایه

فرمان curl می تواند برای دانلود فایل ها از اینترنت استفاده شود، اما در شکل اولیه آن، می توانید محتوای صفحه وب را مستقیما به پنجره ترمینال بارگیری کنید.

برای مثال، دستور زیر را وارد کنید به یک پنجره ترمینال:

curl http://linux.about.com/cs/linux101/g/curl.htm

خروجی در پنجره ترمینال پیمایش می کند و به شما کد برای صفحه وب مرتبط را نشان می دهد.

بدیهی است که صفحات برای خواندن بسیار سریع هستند و بنابراین اگر می خواهید آن را کاهش دهید، باید از فرمان کمتری یا فرمان بیشتر استفاده کنید .

curl http://linux.about.com/cs/linux101/g/curl.htm | بیشتر

خروجی محتویات Curl To File

مشکل با استفاده از فرمان پایه curl این است که متن بسیار سریع حرکت می کند و اگر شما یک فایل مانند یک تصویر ISO را دانلود کنید، نمی خواهید این کار را برای خروجی استاندارد انجام دهید.

برای ذخیره کردن محتوا به یک فایل، همه چیزهایی که باید انجام دهید این است که عبارت minus o (-o) را به صورت زیر مشخص کنید:

curl -o

بنابراین برای دانلود صفحه مرتبط به در بخش استفاده از دستور اصلی، همه چیزهایی که باید انجام دهید این است که دستور زیر را وارد کنید:

curl -o curl.htm http://linux.about.com/cs/linux101/g/curl.htm

پس از دانلود فایل شما می توانید آن را در یک ویرایشگر یا برنامه پیش فرض آن تعیین کنید که توسط نوع فایل مشخص شده است.

شما می توانید این را با استفاده از کلید منهای O (-O) به صورت زیر ساده کنید:

curl -O http://linux.about.com/cs/linux101/g/curl.htm

این از قسمت نام پرونده URL استفاده خواهد کرد و آن را نام فایل ای که URL به آن ذخیره شده است، می دهد. در مثال فوق، فایل به نام curl.htm نامیده می شود.

اجرای فرمان Curl در زمینه

به طور پیش فرض، فرمان curl یک نوار پیشرفت را نشان می دهد که به شما چقدر طول می کشد و تعداد اطلاعات منتقل شده است.

اگر فقط بخواهید فرمان را اجرا کنید تا بتوانید با چیزهای دیگر کار کنید، اولین کاری که باید انجام دهید این است که آن را در حالت خاموش اجرا کنید و سپس آن را به عنوان فرمان پس زمینه اجرا کنید.

برای اجرای یک فرمان به طور صریح از دستور زیر استفاده کنید:

curl -s -O

برای دریافت فرمان برای اجرای در پس زمینه شما نیاز به استفاده از ampersand (&) به شرح زیر است:

curl -s -O &

دانلود URL های متعدد با Curl

شما می توانید از چندین URL با استفاده از یک دستور curl تک دانلود کنید.

در ساده ترین فرم شما می توانید URL های مختلف را به صورت زیر دانلود کنید:

curl -O http://www.mysite.com/page1.html -O http://www.mysite.com/page2.html

تصور کنید هر چند شما دارای یک پوشه با 100 عکس همه به نام image1.jpg، image2.jpg، image3.jpg و غیره می خواهید نمی خواهید تمام این آدرس ها را تایپ کنید و مجبور نیستید.

شما می توانید از مربع های مربعی برای عرضه یک محدوده استفاده کنید. برای مثال، برای دریافت فایل ها از 1 تا 100 می توانید موارد زیر را مشخص کنید:

curl -O http://www.mysite.com/images/image[1-100].jpg

شما همچنین می توانید براکت های متعدد را برای مشخص کردن چندین سایت با فرمت های مشابه استفاده کنید.

به عنوان مثال تصور کنید که می خواهید www.google.com و www.bing.com را دانلود کنید. شما به سادگی می توانید از دستور زیر استفاده کنید:

curl -O http: // www. {google، bing} .com

نمایش پیشرفت

به طور پیش فرض دستور curl اطلاعات زیر را به عنوان یک URL دریافت می کند:

اگر شما یک نوار پیشرفت ساده را ترجیح می دهید که به سادگی منوی هش (- #) را به صورت زیر مشخص کنید:

curl - # -O

بارگذاري مجدد

تصور کنید URL شما را به عنوان بخشی از فرمان curl مشخص کرده اید و فکر می کنید آدرس درست برای دانلود یک فایل بزرگ فقط برای بازگشت به بعد برای پیدا کردن که همه شما یک صفحه وب است که "این صفحه به www.blah هدایت شده است. com "است. این آزار دهنده نیست.

دستور curl هوشمندانه است که می تواند مسیر هدایت را دنبال کند. همه چیزهایی که باید انجام دهید این است که از کلید منهای L (-L) به صورت زیر استفاده کنید:

curl -OL

کاهش سرعت دانلود

اگر شما یک فایل بزرگ را دانلود کرده اید و یک اتصال اینترنتی ضعیف دارید، اگر خانواده ها سعی در انجام کارهای اینترنتی هم داشته باشند، ممکن است خانواده را تحریک کنند.

خوشبختانه، شما می توانید سرعت دانلود را با فرمان curl کاهش دهید به طوری که در حالی که طول می کشد تا فایل را دانلود کنید که می توانید همه را خوشحال نگه دارید.

curl -O - حد مجاز 1m

این میزان را می توان در کیلابایت (k یا k)، مگابایت (m یا m) یا گیگابایت (g یا g) مشخص کرد.

دانلود فایل ها از یک سرور FTP

فرمان curl می تواند بیش از انتقال پرونده HTTP انجام شود. این می تواند FTP، GOPHER، SMB، HTTPS و بسیاری از فرمت های دیگر را اداره کند.

برای دانلود فایل ها از سرور FTP از دستور زیر استفاده کنید:

curl -u user: password -o

اگر نام یک فایل را به عنوان بخشی از URL مشخص کنید، آن فایل را بارگیری می کند، اما اگر نام پوشه را مشخص کنید، یک لیست پوشه را باز می گرداند.

شما همچنین می توانید از curl برای آپلود فایل ها به سرور ftp با استفاده از دستور زیر استفاده کنید:

curl -u user: password -T

نام پرونده ها و می توانند از تطابق همان الگو برای بارگیری چندین فایل HTTP استفاده کنند.

انتقال اطلاعات فرم به یک فرم

شما می توانید از فرمول برای پر کردن یک فرم آنلاین و ارسال اطلاعات به عنوان اگر شما آن را آنلاین آنلاین پر کنید. بسیاری از خدمات محبوب مانند گوگل این نوع از استفاده را مسدود می کند.

تصور کنید یک فرم با نام و آدرس ایمیل وجود دارد. شما می توانید این اطلاعات را به صورت زیر ارسال کنید:

curl -d name = john email = john@mail.com www.mysite.com/formpage.php

روش های مختلف انتقال اطلاعات فرم وجود دارد. دستور بالا از متن پایه استفاده می کند، اما اگر شما می خواهید از چندین کد گذاری استفاده کنید که اجازه انتقال تصویر را می دهد، باید از کلید minus F (-F) استفاده کنید.

خلاصه

دستور curl دارای بسیاری از روش های احراز هویت مختلف است و شما می توانید از آن برای دسترسی به سایت های FTP، ارسال ایمیل، اتصال به آدرس SAMBA، آپلود و دانلود فایل ها و بسیاری چیزهای دیگر استفاده کنید.

برای کسب اطلاعات بیشتر در مورد curl صفحه راهنمای را بخوانید.