یک اسکریپت پایتون بنویسید که با استفاده از تابع subprocess.call دستور ping را برای یک آدرس IP معین اجرا کند و بر اساس کد بازگشتی پیام «پینگ موفق» یا «پینگ ناموفق» را چاپ کند.

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

0.0

در این تمرین از ماژول استاندارد subprocess و تابع subprocess.call استفاده کنید؛ پارامترها را به صورت لیست (مثلاً ['ping', '-c', '3', ip]) ارسال کنید تا از استفاده بی‌مورد از shell=True جلوگیری شود. مقدار بازگشتی تابع را بررسی کنید (صفر به‌معنای موفقیت) و در صورت نیاز خطاهای ساده مثل FileNotFoundError را مدیریت کنید؛ این روش برای اجرای دستورات سیستمی در برنامه‌های سیستم و دستگاه‌های جاسازی‌شده (مثل رزبری‌پای) کاربرد دارد.

توسط پژوهشگر در 221 روز قبل ساعت 01:25
دسته بندی ها: Python Python for beginner
reyhaneh در 221 روز قبل ساعت 13:19

برای اجرای دستور ping بدون shell از subprocess.call با آرگومان‌های لیست مانند ['ping', '-c', '3', ip] استفاده کنید تا از shell=False بهره ببرید. بازگشت کد صفر به معنای موفقیت است و در غیر این صورت پیام «پینگ ناموفق» چاپ می‌شود و می‌توانید خطاهای ساده مانند FileNotFoundError را مدیریت کنید. اگر می‌خواهید روی ویندوز هم کار کند، باید پارامترها را مطابق آن سیستم تنظیم کنید (مثلاً از '-n' به جای '-c' استفاده کنید). این روش برای اجرای فرمان‌ها در سیستم‌های جاسازی‌شده مانند Raspberry Pi مناسب است و امنیت اجرای فرمان را نسبت به استفاده از shell بالا نگه می‌دارد.

گزارش

1 پاسخ

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

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