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
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
Bạn có thể dùng phím mũi tên lên/xuống, hoặc PageUp/PageDown để lên xuống.
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
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
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
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.