it-swarm-vi.com

Làm thế nào để đình chỉ và tiếp tục quá trình

Trong bash terminal tôi có thể nhấn Control+Z để tạm dừng bất kỳ quy trình đang chạy nào ... sau đó tôi có thể nhập fg để tiếp tục quy trình.

Có thể tạm dừng một quá trình nếu tôi chỉ có nó không? Và nếu vậy, tôi nên sử dụng lệnh nào?

Tôi đang tìm kiếm một cái gì đó như:

suspend-process $PID_OF_PROCESS

và sau đó tiếp tục nó với

resume-process $PID_OF_PROCESS
151
Stefan

Bạn có thể sử dụng kill để dừng quá trình.

Để dừng 'lịch sự' đối với quy trình (thích điều này cho sử dụng bình thường), hãy gửi SIGTSTP:

kill -TSTP [pid]

Để dừng lại 'khó khăn', hãy gửi SIGSTOP:

kill -STOP [pid]

Lưu ý rằng nếu quy trình bạn đang cố gắng dừng bằng PID nằm trong bảng công việc của Shell, thì nó có thể vẫn hiển thị ở đó, nhưng chấm dứt, cho đến khi quy trình đó lại fg 'd.

Để tiếp tục thực hiện quy trình, đã gửi SIGCONT:

kill -CONT [pid]
181
Steve Burdine

Bạn nên sử dụng lệnh kill cho điều đó.

Để dài dòng hơn - bạn phải chỉ định tín hiệu đúng , tức là.

$ kill -TSTP $PID_OF_PROCESS

đình chỉ quá trình và

$ kill -CONT $PID_OF_PROCESS

để nối lại nó Tài liệu ở đây .

48
maxschlepzig