Làm thế nào để ngăn chặn tập lệnh Nohup chạy
2024-10-28 12:00:19
tin tức
tiyusaishi
I. Giới thiệu
Khi sử dụng Linux hoặc Unix, chúng ta thường cần thực hiện một số tác vụ nền có thể tiếp tục chạy ngay cả sau khi thoát khỏi thiết bị đầu cuối. Trong trường hợp này, chúng ta có thể sử dụng lệnh Nohup để chạy script và để script chạy liên tục ở chế độ nền. Tuy nhiên, trong một số trường hợp, chúng tôi có thể cần dừng tập lệnh Nohub đang chạy. Bài viết này sẽ trình bày chi tiết cách dừng tập lệnh Nohup đang chạy.
2. Hiểu lệnh Nohup
Đầu tiên, hãy hiểu ngắn gọn cách thức hoạt động của lệnh Nohup. Nohup là chữ viết tắt của "nohangup" và được sử dụng để chạy lệnh hoặc tập lệnh trong nền và tiếp tục chạy ngay cả khi bạn thoát khỏi thiết bị đầu cuối hoặc đóng phiên. Khi bạn bắt đầu một tập lệnh bằng lệnh Nohup, nó sẽ tạo ra một tệp có tên nohup.out trong thư mục hiện tại để ghi lại đầu ra của tập lệnh. Đồng thời, một quá trình gọi là nohup sẽ chịu trách nhiệm kiểm soát việc chạy tập lệnh. Để ngăn tập lệnh chạy, chúng ta cần tìm ID (PID) của tiến trình.
Phần 3: Tìm Nohup Process ID (PID) đang chạy
Để dừng tập lệnh Nohup đang chạy, trước tiên bạn cần tìm ID tiến trình (PID) của tập lệnh. Bạn có thể sử dụng lệnh sau để tìm hiểu:
1. Mở Terminal.
2. Nhập lệnh sau và nhấn enter:
''Ầm ầm
psaux|grepnohup
```
Điều này sẽ liệt kê tất cả các thông tin quá trình liên quan đến Nohup. Tìm ID tiến trình (PID) của tập lệnh bạn đang chạy. Nó thường nằm trong cột thứ hai của đầu ra. Chẳng hạn:
''Ầm ầm
usernamePID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOMMAND......../path/to/your/script& (chi tiết bổ sung có thể theo sau........................................................). ````!。 '' và thư mục của người dùng có thể không giống nhau. Bằng cách này, bạn đã tìm thấy PID của quá trình tương ứng và bạn có thể chuyển sang bước tiếp theo để dừng nó. 4. Dừng tập lệnh Nohup đang chạySau khi tìm thấy ID tiến trình (PID) của tập lệnh Nohup đang chạy, bạn có thể sử dụng lệnh sau để dừng nó: ''''''bashkillPID'' thay vì 'PID'' với ID tiến trình thực tế (PID). Lệnh này sẽ gửi tín hiệu tiêu diệt đến quá trình và nó sẽ ngừng chạy ngay lập tức. Nếu bạn muốn buộc một quá trình kết thúc mà không cho nó bất kỳ cơ hội nào để dọn dẹp tài nguyên hoặc lưu trạng thái, bạn có thể sử dụng lệnh sau: ''''''bashkill-9PID'', trong đó tham số '-9' gửi tín hiệu chấm dứt lực, về cơ bản buộc tắt bất kỳ quy trình nào vẫn đang chạy mà không có cảnh báo. Hãy thận trọng khi thực hiện các hành động này, vì buộc chấm dứt quá trình có thể gây ra các vấn đề như một số tài nguyên không được phát hành đúng cách hoặc mất dữ liệu. ''''''5. Phát biểu bế mạc: Điều rất quan trọng là chấm dứt tập lệnh chạy các tác vụ nền' Nếu bạn gặp phải một tác vụ nền không thể chấm dứt, đừng ngần ngại yêu cầu trợ giúp ngay lập tức và cố gắng sử dụng các phương pháp trên để giải quyết vấn đề nhằm tránh các vấn đề và rắc rối tiềm ẩn, bài viết này giới thiệu cách sử dụng lệnh Nohup để chạy tập lệnh trong nền và cung cấp phương pháp về cách dừng tập lệnh Nohup đang chạy, tôi hy vọng nó sẽ hữu ích cho bạn, tôi chúc bạn mọi điều tốt đẹp nhất! ''''''