Lệnh pgrep trong linux với các ví dụ dễ hiểu

Lệnh pgrep trong Linux giúp bạn tìm kiếm các tiến trình đang chạy dựa trên tên hoặc các thuộc tính khác một cách nhanh chóng. Nó trả về ID tiến trình (PID) của các tiến trình phù hợp với mẫu tìm kiếm mà bạn cung cấp. Sử dụng pgrep rất tiện lợi để kiểm tra xem một ứng dụng cụ thể có đang chạy hay không, hoặc để lấy PID của nó cho các mục đích khác. Đây là một công cụ hữu ích cho việc quản lý và giám sát hệ thống Linux.

Lệnh pgrep trong linux là gì?

Lệnh command pgrep in linux là một công cụ dòng lệnh mạnh mẽ, giúp bạn tìm kiếm các tiến trình đang chạy dựa trên tên hoặc các thuộc tính khác của chúng. Nó đơn giản hóa việc xác định PID (Process ID) của một tiến trình cụ thể, thay vì phải sử dụng các lệnh phức tạp hơn như `ps` kết hợp với `grep`. Ví dụ, bạn có thể dễ dàng tìm PID của tất cả các tiến trình liên quan đến trình duyệt Firefox. Lệnh này đặc biệt hữu ích trong các script tự động hóa, nơi bạn cần thao tác với một tiến trình cụ thể. pgrep cung cấp nhiều tùy chọn để tinh chỉnh tìm kiếm, giúp bạn tìm chính xác tiến trình mình cần.

Tìm hiểu Mục đích của Lệnh pgrep

Trong bước này, bạn sẽ tìm hiểu về mục đích và cách dùng lệnh pgrep trong Linux. Lệnh pgrep là một công cụ mạnh mẽ giúp bạn tìm kiếm các tiến trình đang chạy. Việc tìm kiếm dựa trên tên hoặc các tiêu chí khác của tiến trình. Lệnh pgrep rất hữu ích khi bạn cần tìm ID tiến trình (PID) của một tiến trình đang chạy. Đặc biệt khi bạn không biết chính xác tên tiến trình hoặc muốn tìm kiếm dựa trên tiêu chí cụ thể. Điều này có thể hữu ích trong nhiều tình huống, ví dụ như giám sát tiến trình hệ thống. Nó cũng giúp tự động hóa tác vụ hoặc khắc phục sự cố. Hãy bắt đầu bằng cách khám phá cách sử dụng cơ bản của lệnh pgrep:
pgrep <process_name>
Lệnh này sẽ trả về PID của (các) tiến trình khớp với <process_name> đã chỉ định. Ví dụ về đầu ra:
1234
5678
9012
Đầu ra hiển thị các PID của các tiến trình khớp với tên tiến trình đã chỉ định.

Sử dụng pgrep để Tìm kiếm Tiến trình theo Tên

Trong bước này, bạn sẽ học cách dùng lệnh pgrep để tìm tiến trình theo tên.

Cú pháp cơ bản để dùng pgrep tìm tiến trình theo tên như sau:

pgrep <process_name>

Lệnh này sẽ trả về PID của các tiến trình khớp với <process_name> bạn chỉ định.

Bạn cũng có thể dùng thêm các tùy chọn với pgrep để tinh chỉnh tìm kiếm của mình.

## Search for processes with a name that starts with "web"
pgrep -f ^web

## Search for processes owned by the "labex" user
pgrep -u labex

## Search for processes with a name that contains "nginx"
pgrep -l nginx

Tùy chọn -f cho phép bạn tìm theo dòng lệnh đầy đủ, không chỉ tên tiến trình. Tùy chọn -u giúp bạn tìm tiến trình của một user cụ thể, còn -l in ra tên tiến trình cùng với PID.

Ví dụ về kết quả:

1234 webserver
5678 nginx
9012 webapplication

Kết quả này hiển thị PID và tên của các tiến trình tìm thấy.

Kết hợp pgrep với các lệnh khác để giám sát tiến trình nâng cao

Trong bước cuối cùng này, bạn sẽ học cách kết hợp lệnh pgrep với các lệnh Linux khác.

Việc này giúp thực hiện các tác vụ giám sát tiến trình nâng cao hơn một cách hiệu quả.

Một trường hợp sử dụng phổ biến là kết hợp pgrep với lệnh ps để lấy thông tin chi tiết hơn về các tiến trình đang chạy:

ps -f -p $(pgrep <process_name>)

Lệnh này sẽ hiển thị đầy đủ thông tin tiến trình, bao gồm user, PID, parent PID, thời gian bắt đầu và command.

Thông tin này dành cho các tiến trình khớp với <process_name> đã chỉ định.

Ví dụ về đầu ra:

UID        PID  PPID  C STIME TTY          TIME CMD
labex     1234  5678  0 10:30 pts/0    00:00:01 /usr/bin/python3 /app/webserver.py
labex     5678  9012  0 10:29 pts/0    00:00:00 nginx: master process nginx -g daemon off;
labex     9012  1234  0 10:29 pts/0    00:00:00 nginx: worker process

Bạn cũng có thể sử dụng pgrep với các lệnh khác, ví dụ như kill hoặc top.

Việc này giúp quản lý hoặc giám sát các tiến trình hiệu quả hơn rất nhiều.

## Kill all processes with a name that starts with "web"

## Monitor the top CPU-consuming processes

Ví dụ đầu tiên sử dụng pgrep để tìm PID của tất cả các tiến trình có tên bắt đầu bằng "web".

Sau đó, nó sử dụng lệnh kill để kết thúc các tiến trình này một cách nhanh chóng.

Ví dụ thứ hai sử dụng pgrep để lấy PID của các tiến trình khớp với <process_name> đã chỉ định.

Tiếp theo, nó chuyển các PID này đến lệnh top để giám sát mức sử dụng tài nguyên của chúng.

Kết luận cho linux pgrep command

Vậy là bạn đã nắm vững cách sử dụng lệnh pgrep trong Linux rồi đấy! Hy vọng bài viết này giúp bạn dễ dàng tìm kiếm và quản lý các tiến trình đang chạy trên hệ thống. Với linux pgrep command, bạn có thể nhanh chóng xác định PID của một ứng dụng cụ thể. Hãy thử nghiệm với các tùy chọn khác nhau để khám phá thêm nhiều khả năng của nó. Việc này sẽ giúp bạn làm chủ hệ thống Linux của mình một cách hiệu quả hơn. Đừng ngần ngại tìm hiểu thêm các lệnh khác để nâng cao kỹ năng quản trị hệ thống. Chúc bạn thành công trên con đường khám phá Linux! Hãy nhớ rằng, thực hành là chìa khóa để thành thạo bất kỳ công cụ nào.

Last Updated : 16/10/2025