یک اسکریپت Bash بنویسید که یک URL را از ورودی بگیرد، با curl یا wget یک درخواست HTTP GET ارسال کند، کد وضعیت (HTTP status) را بررسی کند و در صورت موفق بودن (کد 200) محتوای پاسخ را در فایل محلی ذخیره کند.

16.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:15

0.0

برای حل این مسئله می‌توانید از curl با گزینه‌های -L برای دنبال‌کردن ریدایرکت‌ها، -s برای حالت سایلنت، -o برای ذخیره خروجی و -w "%{http_code}" برای دریافت کد وضعیت استفاده کنید؛ سپس کد وضعیت را بررسی کنید و در صورت 200 بودن نام فایل را نگه دارید. با wget نیز می‌توانید از -O برای تعیین فایل خروجی و --server-response یا --spider برای بررسی پاسخ استفاده کنید. نکات: آرگومان‌ها را در کوتیشن قرار دهید تا با فاصله‌ها درست کار کند، خطاها را با بررسی کد خروجی برنامه مدیریت کنید و برای خوانایی از توابع و پیام‌های واضح استفاده کنید.

توسط پژوهشگر در 221 روز قبل ساعت 01:15
دسته بندی ها: Bash Scripting Bash Scripting for beginner
arman در 221 روز قبل ساعت 13:59

برای مطمئن‌شدن از اینکه پاسخ HTTP 200 است، از curl با -L -s -o "$outfile" -w "%{http_code}\n" استفاده کنید و کد وضعیت را دریافت کنید. اگر کد 200 بود، محتوای پاسخ را در فایل ذخیره کنید و در غیر این صورت فایل را حذف یا پیغام خطای مناسبی بدهید. به‌جای curl می‌توانید از wget با -O برای خروجی و --server-response یا --spider برای بررسی پاسخ استفاده کنید. همچنین آرگومان‌ها را در کوتیشن بگذارید تا فاصله‌ها درست پردازش شوند و با استفاده از توابع ساده و پیغام‌های واضح، خوانایی و مدیریت خطا را بهبود دهید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری