Tìm và Dừng tiến trình nohup trên Python

Khi bạn sử dụng lệnh nohup python3 run.py &, tiến trình của bạn sẽ chạy trong nền và sẽ không bị dừng lại ngay cả khi bạn thoát khỏi phiên terminal. Tuy nhiên, nếu bạn muốn dừng lệnh này, có thể làm theo các cách sau:

1. Tìm và Dừng tiến trình

  • Đầu tiên, bạn cần tìm PID (Process ID) của tiến trình đang chạy. Bạn có thể dùng lệnh ps hoặc pgrep để tìm PID của tiến trình python3 run.py:
    bash
    ps aux | grep python3

    Hoặc:

    bash
    pgrep -fl python3
  • Sau khi biết được PID (ví dụ: PID là 12345), bạn có thể dừng tiến trình bằng lệnh kill:
    bash
    kill 12345

    Nếu tiến trình không dừng, bạn có thể sử dụng tín hiệu mạnh hơn (-9):

    bash
    kill -9 12345

2. Dừng tiến trình bằng jobskill

Nếu bạn đã chạy lệnh nohup trong cùng một terminal và không thoát khỏi session, bạn có thể làm như sau:

  • Dùng lệnh jobs để xem các tiến trình đang chạy trong nền:
    bash
    jobs
  • Sau đó, bạn có thể dừng tiến trình bằng lệnh kill với ID tiến trình được hiển thị:
    bash
    kill %1

    (Giả sử %1 là tiến trình đầu tiên trong danh sách.)

3. Xem và Dừng tiến trình từ file nohup.out

  • Nếu bạn muốn theo dõi đầu ra của lệnh nohup và biết tiến trình nào đang chạy, bạn có thể xem file nohup.out:
    bash
    tail -f nohup.out
  • Tìm thông tin về tiến trình bạn muốn dừng và làm theo các bước trên để dừng nó.

Sau khi dừng tiến trình, nếu bạn muốn tiếp tục sử dụng lệnh nohup, bạn sẽ phải khởi động lại tiến trình với nohup từ đầu.