Lệnh Pipe, Grep và Sort trong Linux/Unix kèm các ví dụ
Ống trong Linux là gì?
Pipe là một lệnh trong Linux cho phép bạn sử dụng hai hoặc nhiều lệnh để đầu ra của một lệnh đóng vai trò là đầu vào cho lệnh tiếp theo. Nói tóm lại, đầu ra của mỗi quy trình trực tiếp làm đầu vào cho quy trình tiếp theo giống như một đường ống. Ký hiệu '|' biểu thị một đường ống.
Pipes giúp bạn kết hợp hai hoặc nhiều lệnh cùng lúc và chạy chúng liên tiếp. Bạn có thể sử dụng các lệnh mạnh mẽ có thể thực hiện các tác vụ phức tạp trong nháy mắt.
Hãy để chúng tôi hiểu điều này với một ví dụ.
Khi bạn sử dụng lệnh 'cat' để xem một tệp trải dài trên nhiều trang, lời nhắc sẽ nhanh chóng chuyển đến trang cuối cùng của tệp và bạn không thấy nội dung ở giữa.
Để tránh điều này, bạn có thể chuyển đầu ra của lệnh 'cat' thành 'less', lệnh này sẽ chỉ hiển thị cho bạn một độ dài cuộn nội dung tại một thời điểm.
cat filename | less
Một minh họa sẽ làm cho nó rõ ràng.
Nhấp chuột đây nếu video không thể truy cập được
Lệnh 'pg' và 'thêm'
Thay vì 'ít hơn', bạn cũng có thể sử dụng.
cat Filename | pg
or
cat Filename | more
Và bạn có thể xem tệp ở dạng bit có thể đọc được và cuộn xuống bằng cách nhấn phím enter.
Lệnh 'grep'
Giả sử bạn muốn tìm kiếm một thông tin cụ thể về mã bưu chính từ một tệp văn bản.
Bạn có thể tự đọc lướt nội dung theo cách thủ công để theo dõi thông tin. Một lựa chọn tốt hơn là sử dụng lệnh grep. Nó sẽ quét tài liệu để tìm thông tin mong muốn và trình bày kết quả ở định dạng bạn muốn.
Cú pháp:
grep search_string
Hãy xem nó hoạt động –
Ở đây, grep lệnh đã tìm kiếm tệp 'sample', cho chuỗi 'Apple' và 'Eat'.
Có thể sử dụng các tùy chọn sau với lệnh này.
Tùy chọn | Chức năng |
---|---|
-v | Hiển thị tất cả các dòng không khớp với chuỗi tìm kiếm |
-c | Chỉ hiển thị số lượng dòng phù hợp |
-n | Hiển thị dòng phù hợp và số của nó |
-i | Khớp cả chữ hoa và chữ thường |
-l | Chỉ hiển thị tên của tệp bằng chuỗi |
Chúng ta hãy thử tùy chọn đầu tiên '-Tôi' trên cùng một tập tin sử dụng ở trên -
Sử dụng tùy chọn 'i' grep đã lọc chuỗi 'a' (không phân biệt chữ hoa chữ thường) từ tất cả các dòng.
Lệnh 'sắp xếp'
Lệnh này giúp trong sắp xếp nội dung của một tập tin theo thứ tự bảng chữ cái.
Cú pháp cho lệnh này là:
sort Filename
Hãy xem xét nội dung của một tập tin.
Sử dụng lệnh sắp xếp
Có mở rộng với lệnh này và chúng được liệt kê bên dưới.
Tùy chọn | Chức năng |
---|---|
-r | Revsắp xếp sai lầm |
-n | Sắp xếp theo số |
-f | Sắp xếp không phân biệt chữ hoa chữ thường |
Ví dụ bên dưới hiển thị cách sắp xếp ngược lại nội dung trong tệp 'abc'.
Bộ lọc là gì?
Linux có rất nhiều lệnh lọc như awk, grep, sed, Spell và wc. Bộ lọc nhận đầu vào từ một lệnh, thực hiện một số xử lý và đưa ra đầu ra.
Khi bạn ghép hai lệnh, đầu ra “đã lọc” của lệnh đầu tiên sẽ được chuyển sang lệnh tiếp theo.
Hãy hiểu điều này với sự trợ giúp của một ví dụ.
Chúng tôi có tệp 'mẫu' sau
Chúng tôi muốn làm nổi bật chỉ những dòng không chứa ký tự 'a', nhưng kết quả sẽ theo thứ tự ngược lại.
Để thực hiện điều này, bạn có thể sử dụng cú pháp sau.
cat sample | grep -v a | sort - r
Chúng ta hãy nhìn vào kết quả.
Tóm tắt:
- Ống '|' gửi đầu ra của một lệnh làm đầu vào của lệnh khác.
- Bộ lọc lấy đầu vào từ một lệnh, thực hiện một số xử lý và đưa ra đầu ra.
- Lệnh grep có thể được sử dụng để tìm chuỗi và giá trị trong tài liệu văn bản
- Đường ống thông qua grep phải là một trong những cách sử dụng phổ biến nhất
- Lệnh 'sắp xếp' sắp xếp nội dung của tệp theo thứ tự bảng chữ cái
- Các lệnh less, pg và more được sử dụng để chia một tệp dài thành các bit có thể đọc được