آموزش ماژول os در پایتون | مدیریت فرآیندها

اجرای دستورات سیستم

در پایتون، ماژول os این امکان را به شما می‌دهد که دستورات سیستم عامل را از داخل برنامه‌های خود اجرا کنید. این ویژگی به شما اجازه می‌دهد که به راحتی با سیستم‌عامل تعامل داشته باشید و کارهای مختلفی را انجام دهید، مانند اجرای برنامه‌ها، مدیریت فایل‌ها و انجام تنظیمات سیستم.

استفاده از os.system()

یکی از ساده‌ترین روش‌ها برای اجرای دستورات سیستم، استفاده از تابع os.system() است. این تابع یک رشته (string) به عنوان ورودی می‌گیرد که شامل دستوری است که می‌خواهید اجرا کنید. برای مثال:

import os

os.system('echo Hello, World!')

در این مثال، دستور echo در سیستم عامل اجرا می‌شود و متن "Hello, World!" را در ترمینال چاپ می‌کند.

محدودیت‌های os.system()

اگرچه os.system() یک روش ساده برای اجرای دستورات است، اما برخی محدودیت‌ها دارد:

  • این تابع فقط خروجی را به ترمینال ارسال می‌کند و شما نمی‌توانید خروجی را در برنامه خود دریافت کنید.
  • در صورتی که دستور اجرا شده با خطا مواجه شود، اطلاعات دقیقی در مورد خطا به شما ارائه نمی‌دهد.

استفاده از subprocess

برای به دست آوردن کنترل بیشتر بر روی اجرای دستورات و مدیریت خروجی، می‌توانید از ماژول subprocess استفاده کنید. این ماژول به شما این امکان را می‌دهد که خروجی دستورات را به راحتی در برنامه خود مدیریت کنید.

به عنوان مثال:

import subprocess

result = subprocess.run(['echo', 'Hello, World!'], capture_output=True, text=True)
print(result.stdout)

در اینجا، ما از تابع subprocess.run() استفاده کردیم که به ما اجازه می‌دهد تا خروجی دستور را در متغیری به نام result ذخیره کنیم. با استفاده از result.stdout می‌توانیم خروجی را چاپ کنیم.

نکات مهم

  • همیشه مطمئن شوید که دستورات شما امن هستند و از ورودی‌های کاربر به درستی استفاده می‌کنند تا از حملات امنیتی جلوگیری کنید.
  • اگر از subprocess استفاده می‌کنید، می‌توانید از پارامترهای مختلفی مانند shell=True برای اجرای دستورات در شل استفاده کنید، اما این کار نیز باید با احتیاط انجام شود.

با استفاده از این قابلیت‌ها، می‌توانید به راحتی دستورات سیستم را از داخل برنامه‌های پایتون خود اجرا کنید و از امکانات سیستم‌عامل بهره‌برداری کنید.

پرسش و پاسخ این درس

برای ثبت پرسش ابتدا در سایت وارد شوید.

  • 1
  • 2
  • 3