11
0
0
چطور میتونم یه دستور خارجی رو توی پایتون اجرا کنم، انگار که توی شل یا خط فرمان تایپ کرده بودم؟
0
0
از subprocess.run استفاده کن:
import subprocess
subprocess.run(["ls", "-l"])
راه دیگهای که معمولاً استفاده میشه os.system هست، ولی بهتره ازش استفاده نکنی چون امنیت نداره اگه هر بخش از دستور از خارج برنامهت بیاد یا شامل فاصله یا کاراکترهای خاص باشه. همچنین subprocess.run معمولاً انعطافپذیرتره (میتونی خروجی استاندارد، خطاها، کد وضعیت واقعی و مدیریت خطای بهتری داشته باشی و غیره). حتی مستندات os.system هم توصیه میکنه از subprocess استفاده کنی.
تو پایتون 3.4 و نسخههای قبلی، از subprocess.call به جای .run استفاده کن.
subprocess.call(["ls", "-l"])
ارسال پاسخ به سوال بالا