Bạn Tìm Gì Hôm Nay ...?
Tất cả đều có chỉ trong 1 nốt nhạc !
Nếu cần hỗ trợ chi tiết gọi 1900 9477
Hệ điều hành hoạt động như một giao diện giữa người dùng và các thiết bị phần cứng. Máy tính không thể thực hiện bất kỳ tác vụ nào nếu không có hệ điều hành. Có rất nhiều hệ điều hành và UNIX là một trong số đó. Nó là một hệ điều hành ổn định hỗ trợ môi trường nhiều người dùng. Linux là một hệ điều hành phổ biến khác dựa trên UNIX. Cả UNIX và Linux đều cung cấp Giao diện dòng lệnh (CLI) mạnh mẽ . Người dùng có thể nhập lệnh vào CLI để thực hiện các tác vụ khác nhau. Có một số lượng lớn các lệnh, và sed và awk là hai trong số đó. Các lệnh này giúp lọc và chuyển đổi văn bản.
Sự khác biệt chính giữa sed và awk là sed là một lệnh dùng để tìm kiếm, lọc và xử lý văn bản trong khi awk mạnh mẽ và chắc chắn hơn sed với các cấu trúc lập trình phức tạp như if/else, while, do/while.
Sed là một trình chỉnh sửa dòng, thường được sử dụng để thay đổi văn bản trong các tệp. Nó được viết tắt từ “stream editor”. Sed đọc từng dòng văn bản từ đầu vào, thực hiện các thay đổi đã được chỉ định và sau đó xuất ra kết quả. Các thay đổi được xác định bằng các biểu thức chính quy (regex).
Cú pháp cơ bản của lệnh sed như sau:
sed [options] 'command' file
Trong đó:
options
là các tùy chọn để tùy chỉnh hoạt động của sed, chẳng hạn như -n để tắt chế độ in dòng mặc định hoặc -i để thay đổi trực tiếp tệp đầu vào.command
là một hoặc nhiều lệnh sẽ được thực hiện cho mỗi dòng của tệp file
.Ví dụ:
sed '1,3 d' test1.txt
Lệnh trên sẽ hiển thị các dòng sau dòng 3. Nó sẽ không hiển thị dòng 1, 2, 3 của file test1.txt.
sed 's/3/2/' test1.txt
Lệnh trên sẽ thay thế 2 thay vì 3 trong file test1.txt.
sed 's/1/one/' test1.txt
Lệnh trên sẽ thay thế one thay vì 1 trong file test1.txt.
sed '1,2 ! d' test1.txt
Lệnh này sẽ chỉ hiển thị dòng 1 và dòng 2 của file test1.txt
Đó là một vài ví dụ cho sed. Nhìn chung, sed cho phép người dùng thực hiện lọc và tìm kiếm.
Lệnh awk cho phép tìm kiếm dữ liệu trong file và in dữ liệu trên console. Nếu một tệp chứa nhiều cột thì cũng có thể tìm thấy dữ liệu trong các cột cụ thể. Hơn nữa, nó còn hỗ trợ các tác vụ như tìm kiếm, thực thi có điều kiện, cập nhật và lọc.
Cú pháp cơ bản của lệnh awk như sau:
awk '{action}' file
Trong đó:
action
là một hoặc nhiều câu lệnh sẽ được thực hiện cho mỗi dòng của tệp file
.
Một số ví dụ:
awk '{print}' test2.txt
Lệnh trên sẽ hiển thị toàn bộ nội dung trong test2.txt
Giả sử rằng tệp test2.txt chứa nhiều cột.
awk '{print $1}' test2.txt
Lệnh này in cột đầu tiên của test2.txt. Theo mặc định, lệnh awk coi khoảng trắng là dấu phân cách.
awk '{print $1 " " $3}' test2.txt
Lệnh trên in cột đầu tiên và cột thứ ba của test2.txt có khoảng trắng ở giữa.
awk '/four/ {print}' test2.txt
Lệnh trên in tất cả các dòng trong file test2.txt có chứa từ four.
awk '/[3-5]/ {print}' test2.txt
Lệnh trên in tất cả các dòng trong file test2.txt chứa các số từ 3 đến 5.
Đó là một số ví dụ về awk.
Nhìn chung, awk là một lệnh mạnh mẽ để xử lý và phân tích tệp văn bản.
Sed và awk là hai công cụ dòng dòng mạnh mẽ được sử dụng để thao tác và xử lý văn bản trong Linux. Cả hai công cụ đều sử dụng biểu thức chính quy để xác định văn bản cần thay đổi hoặc xóa. Tuy nhiên, giữa hai công cụ này cũng có một số điểm khác biệt cơ bản.
Sed
command
.Awk
{action}
.So sánh
Tính năng | Sed | Awk |
---|---|---|
Loại | Trình chỉnh sửa dòng | Ngôn ngữ lập trình kịch bản |
Mục đích | Thay thế hoặc xóa văn bản đơn giản | Xử lý văn bản phức tạp |
Cú pháp | Dựa trên lệnh | Dựa trên ngôn ngữ lập trình |
Tùy chọn | Có | Có |
Kết luận
Sed và awk là hai công cụ mạnh mẽ có thể được sử dụng để thao tác và xử lý văn bản trong Linux. Lựa chọn công cụ nào phụ thuộc vào nhu cầu cụ thể của bạn. Nếu bạn cần thực hiện các tác vụ thay thế hoặc xóa văn bản đơn giản, thì sed là một lựa chọn tốt. Nếu bạn cần thực hiện các tác vụ xử lý văn bản phức tạp hơn, chẳng hạn như lọc, phân tích và tạo báo cáo, thì awk là một lựa chọn tốt hơn.
Tham khảo thêm các bài viết khác tại đây.
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
P.A Việt Nam cung cấp đa dạng các cấu hình Máy Chủ Ảo và Máy Chủ Riêng
Cloud Server
Cloud Server Pro
Máy Chủ Riêng
Tham khảo các ưu đãi: https://www.pavietnam.vn/vn/tin-khuyen-mai/