Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.
Cách thực thi lệnh hệ thống hoặc System Command từ Python
Khi làm việc với Python, đôi khi bạn cần thực thi các lệnh hệ thống hoặc chạy một chương trình khác trực tiếp từ mã nguồn. Điều này đặc biệt hữu ích khi bạn muốn tự động hóa các tác vụ, tích hợp các công cụ bên ngoài, hoặc quản lý hệ thống một cách linh hoạt. Bài viết này sẽ hướng dẫn chi tiết các phương pháp để thực thi lệnh hệ thống hoặc chạy chương trình khác trong Python, từ những cách đơn giản như sử dụng os.system()
đến các giải pháp mạnh mẽ hơn như subprocess.run()
và subprocess.Popen()
.
Sử dụng subprocess.run()
để chạy lệnh trong Python
Python cung cấp module subprocess
trong thư viện chuẩn để thực thi lệnh hệ thống.
Ví dụ:
import subprocess subprocess.run(["ls", "-l"])
Cách hoạt động:
- Hàm
run
thực thi lệnh được mô tả trong danh sách args. - args phải là Danh sách chuỗi (List of Strings), không phải một chuỗi đơn chứa toàn bộ lệnh.
Hàm subprocess.run()
hỗ trợ nhiều tham số tùy chọn như:
Bài viết này được đăng tại [free tuts .net]
subprocess.run(args, *, stdin=None, input=None, stdout=None, stderr=None, capture_output=False, shell=False, cwd=None, timeout=None, check=False, encoding=None, errors=None, text=None, env=None, universal_newlines=None, **other_popen_kwargs)
Để biết thêm chi tiết, bạn có thể tham khảo tài liệu chính thức.
Đối với Python 3.4 trở xuống
Nếu sử dụng Python phiên bản cũ hơn, thay vì subprocess.run()
, bạn dùng subprocess.call()
:
import subprocess subprocess.call(["ls", "-l"])
Sử dụng os.system()
trong Python
Hàm os.system()
cũng có thể được sử dụng để chạy lệnh:
import os os.system("ls -l")