Hướng dẫn sử dụng

Công Cụ Văn Bản Linux trực tuyến — grep · awk · sed

Lọc log đã dán bằng grep, lấy cột bằng awk, thay thế bằng sed, đếm giá trị trùng với sort và uniq trong pipeline dùng tùy chọn được hỗ trợ.

Cách sử dụng

  1. Dán nhật ký hoặc văn bản vào Văn bản gốc. Ô này hỗ trợ nhiều dòng.
  2. Nhập lệnh trong ô một dòng: grep 'ERROR', hoặc nối grep 'ERROR' | sort | uniq -c.
  3. Nhấn Chạy hoặc Ctrl+Enter (⌘+Enter trên Mac) trong ô lệnh. Chỉnh sửa không tự chạy. Dùng Dừng để ngắt thực thi.
  4. Xem kết quả, mở rộng hoặc sao chép toàn bộ đầu ra. Văn bản gốc không đổi.
  5. Chạy lại sau khi đổi văn bản hoặc lệnh. Trước đó không thể sao chép hay mở rộng kết quả cũ. Mỗi biểu tượng đặt lại xóa ô tương ứng và đưa con trỏ về ô đó.

Ví dụ đầu vào và đầu ra

Đếm các dòng lỗi trùng lặp

Ví dụ đầu vào

Văn bản gốc:
ERROR host api
INFO host web
ERROR host api
ERROR host worker

Lệnh:
grep 'ERROR' | sort | uniq -c

Ví dụ kết quả

      2 ERROR host api
      1 ERROR host worker

Kiến thức nền

Đầu vào, đầu ra và pipe
Đầu vào chuẩn cung cấp dữ liệu cho lệnh; đầu ra chuẩn là kết quả. Pipe (|) chuyển kết quả sang lệnh tiếp theo. Thứ tự quan trọng: awk chỉ nhận các dòng đã lọc bởi grep.
grep: tìm dòng
Chọn dòng phù hợp. Mặc định dùng biểu thức chính quy; -F tìm chuỗi nguyên văn, -E dùng mẫu mở rộng. Trong grep -E 'ERROR|WARN', | bên trong dấu nháy nghĩa là “hoặc”.
awk: trường, điều kiện và tổng
Tách dòng thành trường, lọc và tính tổng. Mặc định phân tách theo khoảng trắng: $1 là trường đầu, $3 là trường thứ ba, $0 là cả dòng. -F đổi dấu phân cách; END in tổng cuối.
sed: thay thế và xóa
s/tìm/thay/g thay mọi kết quả khớp trong dòng; /mẫu/d bỏ dòng phù hợp khỏi đầu ra. sed '/DEBUG/d' loại các dòng DEBUG.
sort và uniq: sắp xếp và đếm
sort -n sắp xếp số, -r đảo chiều. uniq nhóm các dòng giống nhau liền kề, nên sort trước để đếm mọi bản trùng. uniq -c thêm số lần; sort -nr xếp từ lớn đến nhỏ.
cut và tr: trích xuất và chuyển đổi
cut chọn vị trí hoặc trường, ví dụ cut -d ',' -f 1. tr thay đổi hoặc xóa ký tự; tr a-z A-Z đổi chữ ASCII thành chữ hoa.
head, tail và wc: xem một phần và đếm
head -n 3 hiển thị ba dòng đầu, tail -n 3 ba dòng cuối. wc -l đếm ký tự xuống dòng, -w đếm từ, -c đếm byte. Thiếu xuống dòng cuối có thể khiến wc -l nhỏ hơn số dòng nhìn thấy.
Dấu nháy và biểu thức chính quy
Đặt mẫu chứa khoảng trắng hoặc pipe trong dấu nháy. Dùng nháy đơn cho awk '{print $1, $3}'. Pipe trong dấu nháy không tách lệnh. . và * có ý nghĩa đặc biệt trong regex.

Lưu ý

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

Công cụ trực tuyến này dùng cho việc gì?

Lọc log đã dán bằng grep, lấy cột bằng awk, thay thế bằng sed, đếm giá trị trùng với sort và uniq trong pipeline dùng tùy chọn được hỗ trợ.

Có thể dán nguyên lệnh terminal không?

Chỉ trong phạm vi hỗ trợ. Đổi grep ERROR app.log thành grep ERROR và dán nội dung tệp vào Văn bản gốc. Đây không phải shell hay môi trường GNU/Linux đầy đủ.

sed có sửa bản gốc không?

Chỉ đầu ra thay đổi. Không sửa đầu vào hay tệp trên PC/máy chủ, cũng không ghi tệp mới. Sao chép kết quả để sử dụng.

Vì sao chỉnh sửa mà kết quả không đổi?

Thực thi thủ công: nhấn Chạy hoặc Ctrl+Enter. Kết quả cũ vẫn hiển thị nhưng sao chép và mở rộng bị tắt cho tới khi chạy lại.

Nếu không khớp hoặc chạy lâu thì sao?

grep không khớp tạo kết quả rỗng. Dừng tác vụ hoặc chờ giới hạn 10 giây. Thu hẹp bộ lọc hay giảm dữ liệu rồi chạy lại.

Vì sao uniq -c lặp lại cùng giá trị?

uniq chỉ nhóm dòng liền kề. Dùng sort | uniq -c rồi sort -nr để đưa số lần lớn nhất lên đầu.

Baro Work cung cấp công cụ không cần đăng nhập. Dữ liệu nhập và kết quả không lưu trên máy chủ hay bộ nhớ trình duyệt. Xem hướng dẫn dịch và DNS về việc gửi ra ngoài.

Dùng tất cả công cụ trên trang chủ →