Hotline: 094.320.0088

Pipe – Kết hợp lệnh Linux

Lệnh Pipe trên linux được sử dụng để kết hợp nhiều lệnh mà trong đó output của lệnh này sẽ là input của lệnh tiếp theo như một đường ống dẫn. Kí tự đại diện cho lệnh Pipe là ‘|’. Ở bài viết này mình sẽ giới thiệu lệnh Pipe kèm với một số lệnh khác như less, more, grep.

Để hiểu chúng ta sẽ dùng ví dụ sau. Giả sử ta có một tập tin có 100 dòng mỗi dòng chứa 1 số từ 1 đến 100. Khi bạn dùng lệnh cat để in nội dung file ra thì mặc định dòng lệnh sẽ đưa ta đến trang cuối, bạn không thể xem được nội dung ở giữa.

root@ubuntu-srv:~# cat longfile

pipe-command-1

Less

Để tránh trường hợp trên ta có thể dùng lệnh less để

root@ubuntu-srv:~# cat longfile | less

Ở câu lệnh trên bạn sẽ thấy là ta không cần ghi thêm input cho lệnh less. Lệnh cat sẽ trả ra output mà lệnh less sẽ dùng làm input.

Thay vì hiện toàn bộ nội dung file, less chỉ hiện vừa đủ cửa sổ dòng lệnh

pipe-command-2

Bạn có thể dùng phím mũi tên lên/xuống, hoặc PageUp/PageDown để lên xuống.

pipe-command-3

Nhấn q để thoát.

More

Thay cho lệnh less, bạn có thể dùng lệnh more

root@ubuntu-srv:~# cat longfile | more

pipe-command-4

Bạn nhấn Enter để xuống từng dòng.

Grep

Lệnh grep giúp bạn lọc các nội dụng cần xem trong tập tin.

root@ubuntu-srv:~# cat longfile | grep 10

pipe-command-5

Dĩ nhiên bạn có thể dùng lệnh pipe nhiều lần trong một câu lệnh:

root@ubuntu-srv:~# cat longfile | grep 10 | sort -r

pipe-command-6

Lệnh sort dùng để sắp xếp lại thứ tự các dòng.

Chúc các bạn thành công.