Ngừng process chạy nền

Phương pháp 1: ps

Dùng hàm ps để tìm id của process, sau đó dùng lệnh kill pid. Kết quả trả về có thể có nhiều pid nếu tên process là chuỗi con trong tên process khác hay ngược lại

# ps -eaf | grep mc
root        54     2  0 04:00 ?        00:00:00 [mmcqd/0]
root     25449 25432  0 20:57 pts/0    00:00:00 mc
root     25455 25451  0 20:58 pts/1    00:00:00 grep mc

# kill 25449

Phương pháp 2: pgrep

Tương tự, có thể dùng pgrep để tìm process id. Nhược điểm là khó xác định pid nếu tên process là chuỗi con trong tên process khác hay ngược lại

# pgrep mc
54
25449
# kill 25449

Phương pháp 3: pkill

pkill có tham đối là tên process. Lưu ý nếu có nhiều process cùng tên thì pkill sẽ ngừng tất cả process đó.

# pkill mc
Terminated

Phương pháp 4: jobs

Nếu đang ở cùng shell với process chạy nền, có thể dùng lệnh jobs để tìm job id

Thí dụ, tạo một process chạy nền

# sleep 100 &
[1] 26297

26297 là process id, nhưng chúng ta cần tìm job id

# jobs
[1]+  Running                 sleep 100 &

và kết thúc job #1

# kill 1
[1]+  Done                    sleep 100

Phương pháp 5:  fg

Dùng lệnh fg jobId để chuyển ứng dụng thành foreground và ctrl+c để kết thúc nó

# jobs
[1]+  Running                 sleep 100 &
# fg 1
sleep 100
^C
#

Leave a Comment

Filed under Software

Leave a Reply