Trên các hệ điều hành giống Linux và Unix, lệnh wc cho phép bạn đếm số dòng, từ, ký tự và byte của mỗi tệp nhất định hoặc đầu vào tiêu chuẩn và in kết quả.
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách sử dụng lệnh wc thông qua các ví dụ đơn giản và thực tế.
Cách sử dụng Lệnh wc
Cú pháp cho lệnh như sau:
wc OPTION... [FILE]...
Lệnh wc có thể chấp nhận tên nhập không hoặc nhiều FILE hơn. Nếu FILE không được chỉ định, hoặc khi FILE là – sẽ đọc đầu vào tiêu chuẩn. Một từ là một chuỗi các ký tự được phân định bởi một không gian, tab hoặc newline.
Ở dạng đơn giản nhất khi wc được sử dụng mà không có bất kỳ tùy chọn nào, lệnh sẽ in bốn cột, số dòng, từ, số byte và tên của tệp cho mỗi tệp được thông qua dưới dạng đối số. Khi sử dụng đầu vào tiêu chuẩn, cột thứ tư (tên tệp) không được hiển thị.
Ví dụ: lệnh sau đây sẽ hiển thị thông tin về tệp ảo /proc/cpuinfo
wc /proc/cpuinfo
Đầu ra sẽ trông giống như sau:
448 3632 22226 /proc/cpuinfo
- 448 là số dòng.
- 3632 là số lượng từ.
- 22226 là số ký tự.
Khi sử dụng đầu vào tiêu chuẩn, tên tệp không được hiển thị:
wc < /proc/cpuinfo
448 3632 22226
Để hiển thị thông tin về nhiều tệp, hãy vượt qua tên tệp, dưới dạng đối số, cách nhau theo khoảng trắng:
wc /proc/cpuinfo /proc/meminfo
Lệnh sẽ cung cấp cho bạn thông tin về từng tệp và một dòng bao gồm tổng số liệu thống kê:
448 3632 22226 /proc/cpuinfo 49 143 1363 /proc/meminfo 497 3775 23589 total
Các tùy chọn dưới đây cho phép bạn chọn số đếm nào được in.
-l
, –lines – In số dòng.-w
, –words – In số lượng từ.-m
, –chars – In số ký tự.-c
, –bytes – In số byte.-L
, –max-line-length – In chiều dài của dòng dài nhất.
Khi sử dụng nhiều tùy chọn, số lượng tùy chọn được in theo thứ tự sau: newline, từ, ký tự, byte, chiều dài dòng tối đa.
Ví dụ: chỉ hiển thị số lượng từ bạn sẽ sử dụng:
wc -w /proc/cpuinfo
3632 /proc/cpuinfo
Đây là một ví dụ khác sẽ in số dòng và chiều dài của dòng dài nhất.
wc -lL /proc/cpuinfo
448 792 /proc/cpuinfo
Tùy chọn này –files0-from=F cho phép đọc đầu vào từ các tệp được chỉ định bởi tên bị chấm dứt NUL trong tệp F. Nếu F là – sau đó được đọc tên từ đầu vào tiêu chuẩn. Ví dụ: bạn có thể tìm kiếm các tệp bằng lệnh find
và cung cấp các tệp đó làm đầu vào cho wc:
find /etc -name 'host*' -printf0 | wc -l --files0-from=-
Đầu ra sẽ hiển thị số dòng cho tất cả các tệp trong thư mục có tên /etc bắt đầu bằng “host”:
4 /etc/host.conf 27 /etc/avahi/hosts 1 /etc/hostname 14 /etc/hosts 46 total
Đếm số dòng
Lệnh wc chủ yếu được sử dụng với tùy chọn -l chỉ đếm số dòng trong tệp văn bản. Ví dụ: để đếm số dòng trong tệp /etc/passwd,
bạn sẽ nhập:
wc -l /etc/passwd
Cột đầu tiên là số dòng và cột thứ hai là tên của tệp:
44 /etc/passwd
Đếm số lượng từ
Chỉ đếm số lượng từ trong tệp văn bản wc -w, tiếp theo là tên tệp. Ví dụ sau đây đếm số lượng từ trong tệp ~/Documents/file.txt:
wc -w /etc/passwd
Số lượng từ được hiển thị trong cột đầu tiên:
513 /home/linuxize/Documents/file.txt
Ví dụ về Lệnh WC
Lệnh wc có thể được sử dụng kết hợp với các lệnh khác thông qua đường ống. Đây là một vài ví dụ.
Đếm tệp trong Thư mục Hiện tại
Lệnh find chuyển danh sách tất cả các tệp trong thư mục hiện tại với mỗi tên tệp trên một dòng duy nhất đến lệnh wc, tính số dòng và in kết quả:
find . -type f | wc -l
Đếm số lượng người dùng
Trong ví dụ dưới đây wc được sử dụng để đếm số dòng từ đầu ra của lệnh .
getent passwd | wc -l
Kết thúc
Lệnh wc là viết tắt của “word count” và có cú pháp khá đơn giản. Nó cho phép bạn đếm số dòng, từ, byte và ký tự trong một hoặc nhiều tệp văn bản.
Nếu bạn có bất kỳ câu hỏi hoặc phản hồi nào, hãy để lại bình luận.