از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
روش استفاده از دستور Curl در Bash
سرفصلهای مطلب
شکل کامل curl URL مشتری است. این هست یک command-line ابزاری که برای انتقال داده ها از یا به هر سروری با استفاده از یک پروتکل خاص مانند HTTP، HTTPS، FTP، TELNET، LDAP و غیره استفاده می شود. یک URL خاص توسط این ابزار برای برقراری ارتباط با یک وب سرور یا سرور برنامه استفاده می شود. دریافت یا ارسال داده ها می توان آن را به طور مستقیم از terminal یا با استفاده از هر اسکریپت. دانلود فایل ها از سرور، اشکال زدایی، تست نقطه پایانی و سایر وظایف را می توان با استفاده از curl انجام داد. کاربردهای مختلف دستور curl در این آموزش نشان داده شده است.
نحو:
سینتکس دستور curl به شرح زیر است:
دستور curl با آدرس URL معتبر برای بازیابی داده ها از سرور یا ارسال داده ها به سرور استفاده می شود. با دستور curl می توان از گزینه های مختلفی برای انجام انواع مختلف وظایف استفاده کرد.
گزینه های حلقه
در این قسمت از آموزش اهداف گزینه های مختلف فر توضیح داده شده است.
گزینه | هدف |
-A، –user-agent |
برای ارسال نام عامل کاربر به سرور. |
-d، –data | برای ارسال داده های HTTP POST. |
-من شامل می کنم | برای افزودن سرصفحه های پاسخ پروتکل در خروجی. |
-من | فقط برای دریافت اطلاعات سرصفحه های HTTP. |
-o، -output |
برای نوشتن خروجی در فایل به جای terminal. |
-O, –remote-name | برای نوشتن خروجی در فایل راه دور. |
-T، –upload-file |
برای آپلود یک فایل محلی در سرور. |
-u، –user |
برای استفاده از نام کاربری و رمز عبور برای سرور. |
-f، -شکست | برای اینکه در صورت بروز خطا، خروجی چاپ نشود. |
-s، – بی صدا | برای کار روی حالت بی صدا |
-h، –help |
برای دریافت اطلاعات در مورد استفاده از هر دستور. |
-V، –نسخه | برای نمایش نسخه دستور. |
نسخه “Curl” را بررسی کنید
دستور زیر را برای چاپ نسخه نصب شده دستور curl اجرا کنید:
خروجی زیر نشان می دهد که نسخه curl 7.68.0 نصب شده است روی سیستم:
مثال های مختلف از دستور “Curl”.
کاربردهای مختلف دستور curl با استفاده از آدرس های URL مختلف در این قسمت از آموزش نشان داده شده است.
مثال 1: درخواست GET را به سرور ارسال کنید
روش ارسال درخواست GET به سرور با استفاده از دستور “curl” در این مثال نشان داده شده است.
دستور “curl” زیر را بدون هیچ گزینه ای برای ارسال درخواست دریافت به آن اجرا کنید https://example.com سرور:
خروجی زیر پس از اجرای دستور قبلی ظاهر می شود. محتوایی که توسط آدرس URL بازگردانده می شود در خروجی که در دستور “curl” استفاده شده است چاپ می شود:
مثال 2: فقط هدرهای HTTP را دریافت کنید
روش دریافت اطلاعات هدرهای HTTP فقط از سرور با استفاده از دستور “curl” در این مثال نشان داده شده است. برای انجام این کار از گزینه -I با دستور curl استفاده می شود.
دستور curl زیر را با گزینه -I اجرا کنید تا اطلاعات هدر HTTP را دریافت کنید https://example.com سرور:
خروجی زیر پس از اجرای دستور قبلی ظاهر می شود. فقط اطلاعات هدر HTTP آدرس URL که در دستور “curl” استفاده می شود در خروجی چاپ می شود:
مثال 3: محدوده خاص بایت ها را بخوانید
روش خواندن محدوده خاصی از بایت ها از سرور با استفاده از دستور “curl” در این مثال نشان داده شده است. برای انجام این کار از گزینه -r با دستور curl استفاده می شود.
دستور “curl” زیر را با گزینه -r اجرا کنید تا حداکثر داده 500 بایتی را بخوانید https://example.com سرور:
خروجی زیر پس از اجرای دستور قبلی ظاهر می شود. 500 بایت اول خروجی که بر اساس دستور “curl” برگردانده می شود روی آدرس URL داده شده در خروجی چاپ می شود:
مثال 4: خروجی را با فرمت JSON دریافت کنید
روش دریافت خروجی با فرمت JSON از سرور با استفاده از دستور “curl” در این مثال نشان داده شده است. گزینه -H و هدر “Accept: application/json” با دستور “curl” برای انجام این کار استفاده می شود.
دستور “curl” زیر را با گزینه -H برای خواندن محتوای آن اجرا کنید https://linuzhint.com/echo/get/json سرور با فرمت JSON اگر سرور از فرمت JSON پشتیبانی نمی کند، خروجی JSON ایجاد نمی شود.
خروجی زیر پس از اجرای دستور قبلی ظاهر می شود. با توجه به خروجی، https://linuxint.com از فرمت JSON پشتیبانی می کند و خروجی دستور “curl” در قالب JSON چاپ می شود:
مثال 5: حداکثر حد نرخ انتقال را تنظیم کنید
دستور “curl” را می توان برای آپلود یک فایل در سرور یا دانلود یک فایل از سرور استفاده کرد. حداکثر نرخ انتقال برای آپلود یا دانلود فایل ها را می توان برای دستور “curl” با استفاده از گزینه -limit-rate تنظیم کرد. نرخ انتقال بر اساس تعیین می شود روی بایت در ثانیه به صورت پیش فرض اما اگر بخواهید، می توانید نرخ را بر حسب کیلوبایت (K)، مگابایت (M) یا گیگابایت (G) تعیین کنید.
دستور زیر را اجرا کنید تا محدودیت سرعت انتقال برای آپلود یا دانلود فایل ها را تنظیم کنید https://linuxint.com سرور در اینجا حداکثر نرخ انتقال 10 مگابایت تعیین شده است.
مثال 6: کوکی را با یک درخواست GET ارسال کنید
اطلاعات کوکی را می توان با استفاده از گزینه -b به همراه کوکی یا نام فایلی که حاوی اطلاعات کوکی در دستور “curl” است به سرور ارسال کرد.
دستور زیر را اجرا کنید تا اطلاعات کوکی با درخواست GET به https://linuxint.com/echo سرور:
نتیجه
“curl” یک دستور بسیار مفید لینوکس برای برقراری ارتباط با سرور و انجام انواع مختلف وظایف است. کاربردهای اصلی این دستور در این آموزش با استفاده از چندین مثال توضیح داده شده است که به کاربران لینوکس کمک می کند تا مفهوم این دستور را درک کنند.
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم
زمان انتشار: 1402-12-29 10:09:03