Liên hệProfile
Danh mục

Mục Lục

    Lệnh diff trong Linux là gì? Cách sử dụng và 11 thao tác với lệnh diff

    Nguyễn Hưng

    Ngày đăng:

    01/04/2026

    Cập nhật lần cuối:

    01/04/2026

    Lượt xem:
    Chia sẻ
    Đánh giá
    5/5 - (1 bình chọn)

    Nguyễn Hưng

    Lượt xem:
    Ngày đăng:

    01/04/2026

    Cập nhật lần cuối:

    01/04/2026

    Mục lục

    Lệnh diff trong Linux là công cụ dòng lệnh dùng để so sánh nội dung hai file hoặc thư mục theo từng dòng và hiển thị rõ các điểm khác nhau giữa chúng, từ những dòng bị thêm, xóa cho đến các đoạn nội dung đã được chỉnh sửa. Trong bài viết này, mình sẽ cùng bạn tìm hiểu chi tiết về cú pháp, các tùy chọn thường dùng, cách đọc kết quả diff qua nhiều ví dụ thực tế và một số lưu ý quan trọng khi áp dụng lệnh diff trong Linux để so sánh file cấu hình, mã nguồn và thư mục.

    Những điểm chính

    Quan điểm của mình: Trong quản trị hệ thống Linux và DevOps, việc kiểm soát sự thay đổi của các file cấu hình hay mã nguồn là nhiệm vụ bắt buộc. Lệnh diff không đơn thuần là một công cụ so sánh văn bản thông thường, mà nó là nền tảng để bạn kiểm tra tính toàn vẹn của hệ thống, rà soát lỗi sau khi cập nhật và tạo ra các bản vá (patch) nhanh chóng. Việc làm chủ diff cùng các tùy chọn nâng cao sẽ giúp kỹ thuật viên xử lý sự cố chính xác hơn, tránh những sai sót thủ công gây gián đoạn dịch vụ. Dưới đây là các nội dung chính trong bài viết giúp bạn hiểu lệnh diff hơn:

    • Khái niệm: Hiểu rõ lệnh diff là công cụ dùng để so sánh nội dung hai tệp tin, giúp bạn nhanh chóng xác định các dòng khác biệt để kiểm tra thay đổi hoặc tạo file patch.
    • Cú pháp lệnh diff: Hiểu cách dùng các tùy chọn và chỉ định đối tượng (file/thư mục) để điều khiển và thực hiện việc so sánh nội dung.
    • Các tùy chọn lệnh diff: Giúp tùy chỉnh cách so sánh và định dạng hiển thị kết quả, làm cho việc đối chiếu file hoặc thư mục trở nên linh hoạt và hiệu quả hơn.
    • Các ký hiệu chuyên dụng: Hiểu rõ ý nghĩa của các ký hiệu, giúp bạn đọc và diễn giải chính xác các thay đổi mà lệnh diff chỉ ra.
    • Ví dụ thực tế lệnh diff: Giúp người đọc biết cách so sánh file, thư mục, tùy chỉnh output và tạo file patch hiệu quả qua các tình huống cụ thể.
    • Lưu ý quan trọng: Nắm được các lưu ý và các lỗi thường gặp, giúp bạn sử dụng lệnh một cách an toàn, chính xác và tránh các kết quả không mong muốn.
    • Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan đến lệnh diff trong Linux.

    Lệnh diff trong Linux là gì?

    Lệnh diff trong Linux là dòng lệnh dùng để so sánh nội dung hai file theo từng dòng, từ đó hiển thị rõ những điểm khác nhau giữa chúng để người dùng dễ kiểm tra, thay đổi trong mã nguồn, file cấu hình hoặc dữ liệu văn bản. Khi chạy diff, công cụ sẽ phân tích hai file và cho biết những dòng nào cần thêm, xóa hoặc chỉnh sửa để tệp thứ nhất trở thành bản sao nội dung của tệp thứ hai.

    Lệnh diff trong Linux là dòng lệnh dùng để so sánh nội dung hai file theo từng dòng
    Lệnh diff trong Linux là dòng lệnh dùng để so sánh nội dung hai file theo từng dòng

    Các dòng thuộc file đầu thường được đánh dấu bằng ký hiệu <, còn các dòng chỉ có trong file thứ hai được đánh dấu bằng >. Nhờ cơ chế thể hiện các thay đổi dưới dạng “chỉ dẫn chỉnh sửa”, output của diff có thể được chuyển thành file patch và sử dụng cùng lệnh patch để áp dụng hàng loạt thay đổi từ một phiên bản tệp sang phiên bản khác một cách có kiểm soát.

    Cú pháp của lệnh diff trong Linux

    Cú pháp lệnh diff cho biết cách chỉ định các tùy chọn và danh sách tệp hoặc thư mục cần so sánh, từ đó điều khiển định dạng hiển thị và phạm vi nội dung được đối chiếu giữa hai bên.

    Cú pháp tổng quát của lệnh diff: diff [OPTION]… FILES.

    Trong đó:

    • OPTION: Là các tham số tùy chọn cho phép thay đổi cách hiển thị và quy tắc so sánh, ví dụ chọn định dạng normal/context/unified, bỏ qua phân biệt hoa – thường, bỏ qua khoảng trắng, chỉ báo khác/giống mà không hiển thị chi tiết, hoặc so sánh thư mục đệ quy.
    • FILES: Là hai đối tượng đầu vào cần so sánh, thường là hai file văn bản (file1 file2), nhưng cũng có thể là hai thư mục (dir1 dir2) khi cần kiểm tra sự khác nhau về cấu trúc và nội dung giữa hai cây thư mục.

    Các tùy chọn thường dùng của lệnh diff Linux

    Theo kinh nghiệm của mình, điều làm nên sự khác biệt giữa người dùng diff thông thường và người dùng thành thạo chính là cách vận dụng các tùy chọn. Chúng giúp bạn nhanh chóng lọc bỏ ‘nhiễu’ (như khoảng trắng, chữ hoa/thường) và tùy chỉnh đầu ra sao cho phù hợp nhất với từng tình huống kiểm tra file cấu hình, mã nguồn hoặc thư mục. Dưới đây là các tùy chọn thường dùng của lệnh diff Linux:

    Tùy chọnÝ nghĩaMô tả chi tiết
    -uĐịnh dạng unifiedHiển thị khác biệt trong định dạng unified, gom các khối thay đổi (hunk) kèm một số dòng ngữ cảnh trước sau, thường dùng khi tạo patch hoặc review thay đổi vì nội dung gọn và dễ theo dõi.
    -cĐịnh dạng contextTrả kết quả theo định dạng context, hiển thị nhiều dòng ngữ cảnh xung quanh phần thay đổi, giúp quan sát sự khác nhau trong bối cảnh đoạn mã hoặc cấu hình rộng hơn.
    -iBỏ qua hoa/thườngKhi so sánh nội dung, lệnh diff sẽ không phân biệt chữ hoa và chữ thường, các khác biệt chỉ về case sẽ không được xem là thay đổi.
    -wBỏ qua khoảng trắngBỏ qua toàn bộ sự khác nhau về khoảng trắng (space, tab) khi so sánh, hữu ích khi file chỉ khác nhau về canh lề hoặc format nhưng nội dung thực tế giống nhau.
    -qChế độ báo cáo ngắn gọnChỉ cho biết hai file có khác nhau hay không mà không hiển thị chi tiết nội dung chênh lệch, phù hợp khi chỉ cần kiểm tra nhanh trạng thái thay đổi.
    -rSo sánh thư mục đệ quySo sánh nội dung hai thư mục theo kiểu đệ quy, duyệt vào các thư mục con để phát hiện file bị thiếu, thêm mới hoặc thay đổi giữa hai cây thư mục.
    -sBáo file giống hệt nhauKhi hai file hoàn toàn giống nhau, diff sẽ trả về thông báo xác nhận thay vì im lặng, giúp dễ kiểm tra kết quả khi so sánh nhiều cặp file.
    -B, –ignore-blank-linesBỏ qua dòng trốngKhông coi các dòng trống hoặc sự khác nhau chỉ do dòng trống là thay đổi, giảm nhiễu khi so sánh file có nhiều khoảng cách dòng.
    –ignore-all-spaceBỏ qua mọi khác biệt về khoảng trắngBỏ qua toàn bộ sự khác nhau về số lượng và vị trí ký tự trắng, tập trung vào phần ký tự không phải khoảng trắng để đánh giá thay đổi nội dung.

    Ký hiệu chuyên dụng trong lệnh diff

    Mục tiêu của lệnh diff rất đơn giản: chỉ ra sự khác biệt. Để làm điều đó một cách hiệu quả, nó sử dụng một số ký hiệu đặc trưng để mô tả chính xác loại thay đổi cần thực hiện giữa hai file. Cá nhân mình thấy rằng thay vì cố gắng đọc toàn bộ file, việc tập trung vào các ký hiệu này giúp tiết kiệm rất nhiều thời gian. Bạn sẽ biết ngay dòng nào được thêm, xóa hay sửa để hai tệp đồng nhất. Bảng dưới đây sẽ tóm tắt nhóm ký hiệu thường gặp trong diff.”

    Ký hiệuÝ nghĩa
    a / +Thêm nội dung
    c / !Thay đổi nội dung
    d / –Xóa nội dung
    <Dòng thuộc file thứ nhất
    >Dòng thuộc file thứ hai

    Ví dụ 1: Dùng diff mặc định để so sánh 2 file file1.txt và file2.txt

    Khi cần kiểm tra nhanh sự khác nhau giữa hai file văn bản theo định dạng tiêu chuẩn, có thể sử dụng lệnh diff ở chế độ mặc định để xem chi tiết những dòng nào cần thêm, xóa hoặc thay đổi.

    diff file1.txt file2.txt
    Dùng diff mặc định để so sánh 2 file file1.txt và file2.txt
    Dùng diff mặc định để so sánh 2 file file1.txt và file2.txt

    Kết quả trả về thường xuất hiện các dòng như 1c1 hoặc 3,4c3,4, trong đó 1c1 nghĩa là dòng 1 của file1 cần được chỉnh lại để khớp với dòng 1 của file2, còn 3,4c3,4 cho biết đoạn từ dòng 3 đến 4 của file1 phải cập nhật thành đoạn từ dòng 3 đến 4 của file2.

    Các dòng bắt đầu bằng < là nội dung chỉ có trong file1, các dòng bắt đầu bằng > là nội dung chỉ có trong file2, dấu --- dùng để phân tách hai khối nội dung, còn những dòng không có ký hiệu là phần giống nhau giữa hai file và không cần chỉnh sửa.

    Ví dụ 2: Dùng diff để so sánh 2 file với option -u (unified)

    Khi cần xem sự thay đổi trong một khối ngữ cảnh thống nhất, đặc biệt phục vụ review code hoặc tạo patch, có thể dùng định dạng unified với tùy chọn -u để gom các thay đổi kèm vài dòng ngữ cảnh xung quanh.

    diff -u file1.txt file2.txt
    Dùng diff để so sánh 2 file với option -u
    Dùng diff để so sánh 2 file với option -u

    Trong output, hai dòng đầu tiên --- file1.txt …+++ file2.txt … cho biết tên và thông tin thời gian của file gốc (file cũ) và file mới dùng để so sánh. Dòng hunk @@ -1,4 +1,4 @@ chỉ ra phạm vi dòng bị ảnh hưởng ở mỗi file, ví dụ -1,4 nghĩa là khối thay đổi trong file1 bắt đầu từ dòng 1 với 4 dòng, còn +1,4 là phạm vi tương ứng trong file2.

    Các dòng bắt đầu bằng dấu - là nội dung chỉ tồn tại trong file1, các dòng bắt đầu bằng + là nội dung chỉ có trong file2, còn những dòng không có tiền tố là phần không thay đổi, giúp dễ nhận diện chính xác đoạn nào phải thêm, sửa hoặc xóa khi đồng bộ hai phiên bản file.

    Ví dụ 3: Dùng diff để so sánh 2 file với option -c (context)

    Nếu muốn xem sự khác biệt nhưng vẫn giữ nhiều dòng ngữ cảnh xung quanh mỗi khối thay đổi, lựa chọn định dạng context với tùy chọn -c là phù hợp để quan sát thay đổi trong một đoạn nội dung rộng hơn.

    diff -c file1.txt file2.txt
    Dùng diff để so sánh 2 file với option -c
    Dùng diff để so sánh 2 file với option -c

    Phần đầu output sẽ chứa dòng *** file1.txt … biểu thị file cũ và dòng --- file2.txt … biểu thị file mới, tiếp theo là các khối được đánh dấu bằng dãy **** cho biết bắt đầu một hunk thay đổi. Bên trong mỗihối, dòng *** 1,4 ** thể hiện phạm vi dòng trong file1 (từ dòng 1 đến dòng 4), còn --- 1,4 ---- là phạm vi tương ứng trong file2; các dòng bắt đầu bằng ! là nội dung khác nhau giữa hai file, trong khi dòng không có ký hiệu là phần giữ nguyên, nhờ vậy người đọc có thể đối chiếu nhanh đoạn cũ và đoạn mới trong cùng một khung ngữ cảnh.

    Ví dụ 4: So sánh file không phân biệt chữ hoa chữ thường

    Khi hai file chỉ khác nhau ở cách viết hoa/chữ thường và bạn chỉ quan tâm nội dung, có thể dùng tùy chọn -i để bỏ qua khác biệt về case.

    diff -i file1.txt file2.txt

    Lệnh này giúp các khác biệt chỉ do “Hello” và “hello” hoặc “CONFIG” và “config” không bị tính là thay đổi, phù hợp khi chuẩn hóa kiểu chữ nhưng giữ nguyên nội dung logic.

    Ví dụ 5: Bỏ qua khoảng trắng khi so sánh nội dung

    Với các file được format lại (thêm/bớt space, tab) nhưng nội dung chữ không đổi, có thể dùng -w hoặc --ignore-all-space để bỏ qua khoảng trắng trong quá trình so sánh.

    diff -w file1.txt file2.txt

    Nhờ bỏ qua khác biệt về space/tab, kết quả diff chỉ tập trung vào thay đổi thực sự trong nội dung, tránh liệt kê các chênh lệch chỉ do căn lề hoặc format lại code.

    Ví dụ 6: Bỏ qua các dòng trống khi phân biệt file

    Nếu file có nhiều dòng trống được thêm vào hoặc xóa bớt nhưng bạn không muốn xem đó là thay đổi, có thể dùng tùy chọn -B hoặc --ignore-blank-lines.

    diff -B file1.txt file2.txt

    Trong chế độ này, diff sẽ không coi sự xuất hiện hay biến mất của dòng trống là chênh lệch, giúp output gọn hơn khi so sánh tài liệu hoặc mã nguồn có nhiều khoảng trắng dòng.

    Ví dụ 7: So sánh hai thư mục bằng lệnh diff trong Linux

    Để so sánh toàn bộ cấu trúc và nội dung giữa hai thư mục (bao gồm các thư mục con), bạn có thể sử dụng diff với tùy chọn -r.

    diff -r dir1 dir2

    Lệnh này duyệt đệ quy vào các thư mục con và báo những file bị thiếu, file khác nhau hoặc file chỉ xuất hiện ở một bên, rất hữu ích khi đối chiếu hai bản release hoặc hai bản backup.

    Ví dụ 8: Kiểm tra nhanh hai file có giống nhau hay không

    Khi chỉ cần biết hai file có hoàn toàn giống nhau hay không mà không cần xem chi tiết nội dung khác biệt, bạn có thể kết hợp -q-s.

    diff -q file1.txt file2.txt

    Chế độ này chỉ hiển thị thông báo “Files … differ” nếu hai file khác nhau, hoặc có thể dùng thêm -s để hiển thị rõ “Files … are identical” khi chúng trùng khớp, giúp kiểm tra nhanh trong script hoặc bước verify.

    Ví dụ 9: So sánh hai file văn bản từ stdin (không cần tạo file trước)

    Khi chỉ cần so sánh nhanh nội dung mà không muốn lưu ra file, có thể dùng lệnh khác (như cat, printf) pipe vào diff hoặc dùng process substitution.

    diff <(echo "Hello") <(echo "Hello Linux")

    Cách này cho phép so sánh trực tiếp hai chuỗi hoặc output lệnh ngay trên terminal, phù hợp cho thao tác thử nghiệm nhanh mà không phải tạo file tạm.

    Ví dụ 10: Chuyển hướng output của diff ra file (làm file patch)

    Khi bạn muốn lưu lại kết quả so sánh để áp dụng ở hệ thống khác hoặc dùng với lệnh patch, có thể chuyển hướng output của diff sang một file patch.

    diff -u file1.txt file2.txt > change.patch

    File change.patch này có thể dùng cùng lệnh patch để cập nhật file cũ thành file mới trên một máy khác hoặc trong quy trình triển khai, giúp quản lý thay đổi có kiểm soát.

    Ví dụ 11: Hiển thị khác biệt dạng “side-by-side” cho dễ quan sát

    Trong một số trường hợp, việc xem hai phiên bản file nằm cạnh nhau sẽ trực quan hơn, có thể dùng thêm tùy chọn hiển thị song song (tùy hệ thống, thường là --side-by-side hoặc -y).

    diff -y file1.txt file2.txt

    Kết quả sẽ đặt nội dung của file1 và file2 trên hai cột cạnh nhau, các khác biệt được đánh dấu ở giữa, giúp dễ dò từng dòng và đối chiếu trực tiếp khi nội dung không quá dài.

    Lưu ý khi sử dụng lệnh diff trong Linux

    Khi sử dụng lệnh diff trong Linux để so sánh file và thư mục, bạn cần lưu ý một số điểm sau để tránh hiểu nhầm kết quả:

    • Diff mặc định phân biệt chữ hoa/chữ thường: Nếu không dùng thêm tùy chọn, diff coi “Config” và “config” là hai giá trị khác nhau. Khi chỉ quan tâm nội dung bất kể cách viết, bạn nên dùng -i để bỏ qua khác biệt về case khi so sánh.
    • Khoảng trắng và dòng trống có thể tạo ra khác biệt “ảo”: Các thay đổi chỉ liên quan đến space, tab hoặc dòng trống (thêm/bớt khoảng cách dòng) vẫn được diff ghi nhận là khác nhau, vì vậy trong các trường hợp chỉ cần so nội dung chính, nên cân nhắc dùng -w, -b hoặc -B/--ignore-blank-lines để bỏ qua các thay đổi do khoảng trắng.
    • Chọn đúng định dạng output theo mục đích sử dụng: Định dạng normal (mặc định) phù hợp khi cần đọc từng khối thay đổi chi tiết, trong khi -u tiện cho tạo patch/git và -c hữu ích khi cần xem nhiều dòng ngữ cảnh, nên cần xác định trước nhu cầu để chọn flag hiển thị cho phù hợp.
    • So sánh thư mục cần đi kèm tùy chọn đệ quy: Khi đối chiếu hai thư mục, cần dùng -r để diff duyệt vào các thư mục con. Ngoài ra có thể kết hợp thêm --exclude để bỏ qua một số file hoặc thư mục không cần so sánh (log, backup, node_modules,…).
    • Kết quả diff có thể dùng để tạo và áp dụng patch: Khi dùng định dạng unified với -u và chuyển hướng output sang file, nội dung này có thể được sử dụng bởi lệnh patch để tái áp dụng các thay đổi trên môi trường khác, vì vậy cần lưu và quản lý file patch cẩn thận trong quy trình triển khai.
    Lưu ý khi sử dụng lệnh diff trong Linux
    Lưu ý khi sử dụng lệnh diff trong Linux

    Đối với môi trường làm việc đã tích hợp Git, bạn nên ưu tiên sử dụng lệnh `thay vì lệnh diff tiêu chuẩn. Lệnh git diff cung cấp khả năng phân tích cú pháp tốt hơn, tự động làm nổi bật các thay đổi bằng màu sắc trực quan và hỗ trợ so sánh linh hoạt giữa các vùng lưu trữ tạm thời (staging area), các nhánh (branches) hoặc các phiên bản commit khác nhau trong dự án.

    Câu hỏi thường gặp

    Nên dùng lệnh diff, cmp hay comm trong trường hợp nào?

    Diff dùng khi cần biết cụ thể dòng nào thay đổi và cách chỉnh sửa để hai file giống nhau.
    – cmp phù hợp khi chỉ cần kiểm tra hai file có giống hệt nhau không ở mức byte, không cần xem chi tiết khác biệt.
    – comm dùng để so sánh hai file đã được sort, cho output theo 3 cột: dòng chỉ có ở file1, chỉ có ở file2 và dòng chung.

    Lệnh diff xử lý file lớn như thế nào, có bị chậm không?

    Với các file dung lượng lớn và có nhiều đoạn thay đổi rải rác, diff vẫn cho kết quả chính xác nhưng thời gian chạy có thể tăng; trong GNU diff có tùy chọn --speed-large-files để tối ưu hiệu năng cho trường hợp file lớn, đổi lại có thể tạo ra tập thay đổi dài hơn một chút.

    Có thể dùng diff để so sánh file nhị phân không?

    Diff chủ yếu được thiết kế cho file văn bản, khi dùng với file nhị phân, nhiều bản cài đặt sẽ chỉ báo “Files … differ” hoặc hiển thị dạng tóm tắt thay vì liệt kê chi tiết từng dòng, nên nếu cần so sánh chính xác byte-level, nên dùng cmp hoặc công cụ chuyên cho binary.

    Tóm lại, lệnh diff trong Linux là một trong những công cụ nền tảng giúp so sánh và theo dõi thay đổi giữa các phiên bản file hoặc thư mục, đặc biệt hữu ích trong quy trình phát triển phần mềm, quản lý cấu hình hệ thống và kiểm tra sự khác nhau trước khi triển khai. Khi nắm vững cú pháp, ý nghĩa các tùy chọn cùng cách đọc ký hiệu trong output và biết kết hợp diff với patch hoặc các lệnh khác, bạn có thể kiểm soát thay đổi trên Linux một cách chính xác, dễ truy vết và phù hợp cho cả môi trường làm việc cá nhân lẫn hệ thống sản xuất.

    5/5 - (1 bình chọn)
    Nguyễn Hưng
    Tôi là Nguyễn Hưng hay còn được biết đến với nickname là Bo, chuyên gia về hệ thống, mạng và bảo mật. Tôi là Co-Founder của Vietnix và Co-Founder của dự án Chống Lừa Đảo.
    0 0 đánh giá
    Đánh giá bài viết
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Cũ nhất
    Mới nhất Được bỏ phiếu nhiều nhất
    Phản hồi nội tuyến
    Xem tất cả bình luận

    BÀI VIẾT LIÊN QUAN

    Hướng dẫn sử dụng nohup để chạy nền không bị ngắt khi thoát SSH
    Hướng dẫn sử dụng nohup để chạy nền không bị ngắt khi thoát SSH

    Lệnh nohup trong Linux dùng để giữ cho tiến trình tiếp tục chạy ngay cả khi bạn đóng terminal hoặc mất kết nối SSH, phù hợp với các tác vụ dài như chạy script, backup hay dịch vụ nền. Từ kinh nghiệm vận hành server và xử lý các phiên SSH hay bị rớt giữa…

    01/04/2026

    Hướng dẫn sử dụng lệnh alias Linux để tạo lệnh rút gọn giúp thao tác nhanh hơn
    Hướng dẫn sử dụng lệnh alias Linux để tạo lệnh rút gọn giúp thao tác nhanh hơn

    Lệnh alias linux là cơ chế cho phép đặt tên rút gọn cho một lệnh hoặc chuỗi lệnh dài, giúp bạn chỉ cần gõ một từ ngắn nhưng vẫn thực thi được đầy đủ câu lệnh phức tạp phía sau, từ đó tiết kiệm thời gian và hạn chế sai sót khi làm việc với…

    01/04/2026

    Hướng dẫn sử dụng lệnh echo Linux để hiển thị và ghi nội dung ra file
    Hướng dẫn sử dụng lệnh echo Linux để hiển thị và ghi nội dung ra file

    Lệnh echo Linux là lệnh cơ bản dùng để hiển thị chuỗi ký tự, giá trị biến hoặc kết quả lệnh ra màn hình, đồng thời có thể kết hợp với chuyển hướng để ghi nội dung vào file cấu hình, file log hay các tệp văn bản phục vụ cấu hình và tự động…

    01/04/2026

    Hướng dẫn sử dụng lệnh paste Linux để ghép nội dung file nhanh chóng
    Hướng dẫn sử dụng lệnh paste Linux để ghép nội dung file nhanh chóng

    Lệnh paste Linux là công cụ dòng lệnh dùng để ghép các dòng tương ứng của nhiều file lại với nhau theo chiều ngang, tạo ra các dòng mới gồm nhiều cột dữ liệu được phân tách bằng ký tự tab mặc định, rất phù hợp khi xử lý dữ liệu dạng bảng, log, CSV…

    01/04/2026

    linux

    lenh

    text