Wc (Unix)

wc (viết tắt cho "word count", tức "đếm từ") là một lệnh trong các hệ điều hành Unix, giống Unix, Plan 9, và Inferno. Chương trình đọc đầu vào chuẩn hoặc một danh sách các tập tin và cho biết một hoặc nhiều thống kê sau đây: số dòng mới, số từ, và số byte. Nếu được cung cấp một danh sách các tập tin, chương trình sẽ hiển thị cả thống kê của từng tập và thống kê tổng hợp.

Ví dụ 
Sử dụng dòng lệnh wc:

 $ wc foo bar
      40     149     947 foo
    2294   16638   97724 bar
    2334   16787   98671 total

Cột đầu tiên là số dòng mới, tức tập tin foo có 40 dòng mới còn bar có 2294 dòng mới – dẫn đến con số tổng cộng 2334 dòng mới. Cột thứ hai chỉ số từ trong mỗi tập tin, cho thấy 149 từ foo và 16638 từ trong bar cho ra tổng cộng 16787 từ. Cột thứ ba chỉ số ký tự trong các tập, cho thấy foo chứa 947 ký tự còn bar chứa 97724 ký tự, với tất cả là 98671 ký tự.

Những phiên bản mới hơn của  có thể phân biệt giữa số byte và ký tự. Sự khác biệt này xuất phát từ Unicode với một lượng lớn ký tự nhiều byte. Người dùng có thể sử dụng các lựa chọn -c cho số byte và -m cho số ký tự.

Lịch sử 
 là một phần của X/Open Portability Guide từ tập 2 năm 1987. Nó được POSIX.1 và Single Unix Specification kế thừa. Chương trình xuất hiện trong Unix phiên bản 1.

GNU  từng nằm trong gói GNU textutils, nay thuộc GNU coreutils. Phiên bản của  trong GNU coreutils được viết bởi Paul Rubin và David MacKenzie.

Lệnh  cũng là một phần trong MSX-DOS2 Tools dành cho MSX-DOS phiên bản 2.

Chương trình này cũng có thể được dùng trên Microsoft Windows qua các dự án GnuWin32 hay UnxUtils, đưa những tiện ích GNU Unix thường dùng đến với Win32.

Chương trình  cũng được phát triển cho hệ điều hành IBM i.

Sử dụng 
wc -c <filename> in số byte
wc -l <filename> in số dòng
wc -m <filename> in số ký tự
wc -w <filename> in số từ
wc -L <filename> in độ dài dòng dài nhất (mở rộng của GNU)

Xem thêm 
Danh sách lệnh Unix

Tham khảo

Liên kết ngoài 

wc(1) - Original Unix First Edition manual page for wc.

The wc Command by The Linux Information Project (LINFO)

Tiện ích xử lý văn bản cho Unix
Tiện ích Unix SUS2008
Lệnh Plan 9
Lệnh Inferno