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