wc (viết tắt của word count) là một công cụ dòng lệnh trong hệ điều hành Unix/Linux, được sử dụng để tìm ra số lượng dòng xuống hàng, số từ, số byte và số ký tự trong các tệp được chỉ định bởi đối số File đến đầu ra tiêu chuẩn và giữ một số lượng tổng cộng cho tất cả các tệp được đặt tên.
Khi bạn xác định tham số File , lệnh wc sẽ in ra tên của tệp cũng như số lượng yêu cầu. Nếu bạn không xác định tên tệp cho tham số File , nó chỉ in ra tổng số lượng đến đầu ra tiêu chuẩn.
Trong bài viết này, chúng ta sẽ thảo luận về cách sử dụng lệnh wc để tính toán số dòng xuống hàng, từ, ký tự hoặc số byte của một tệp với các ví dụ thực tế.
Cú pháp lệnh wc
Cú pháp của lệnh wc như sau.
# wc [options] filenames
Sau đây là các tùy chọn và cách sử dụng được cung cấp bởi lệnh wc.
wc -l
– In ra số lượng dòng trong một tệp.
wc -w
– In ra số lượng từ trong một tệp.
wc -c
– Hiển thị số lượng byte trong một tệp.
wc -m
– In ra số lượng ký tự từ một tệp.
wc -L
– Chỉ in ra độ dài của dòng dài nhất trong một tệp.
Hãy xem cách chúng ta có thể sử dụng lệnh wc với một số đối số và ví dụ có sẵn trong bài viết này. Chúng tôi đã sử dụng tệp tecmint.txt để kiểm thử các lệnh.
Hãy tìm hiểu kết quả của tệp tecmint.txt bằng cách sử dụng lệnh cat như được hiển thị dưới đây.
$ cat tecmint.txt
Red Hat
CentOS
AlmaLinux
Rocky Linux
Fedora
Debian
Scientific Linux
OpenSuse
Ubuntu
Xubuntu
Linux Mint
Deepin Linux
Slackware
Mandriva
1. Một Ví dụ Cơ bản về Lệnh WC
Lệnh wc không có tham số nào sẽ hiển thị một kết quả cơ bản của tệp tecmint.txt. Ba số được hiển thị dưới đây lần lượt là 12 (số dòng), 16 (số từ), và 112 (số byte) của tệp.
$ wc tecmint.txt
12 16 112 tecmint.txt
2. Đếm Số lượng Dòng trong một Tệp
Đếm số lượng dòng xuống hàng trong một tệp sử dụng tùy chọn -l
, nó sẽ in ra số lượng dòng trong một tệp cho trước. Ví dụ, lệnh sau sẽ hiển thị số lượng dòng xuống hàng trong một tệp.
Trong kết quả đầu ra, trường đầu tiên được chỉ định là đếm và trường thứ hai là tên của tệp.
$ wc -l tecmint.txt
12 tecmint.txt
3. Đếm Số lượng Từ trong một Tệp
Đối số -w
cùng với lệnh wc sẽ in ra số lượng từ trong một tệp. Gõ lệnh sau để đếm số lượng từ trong một tệp.
$ wc -w tecmint.txt
16 tecmint.txt
4. Đếm Số lượng Ký tự trong một Tệp
Khi sử dụng tùy chọn -m
với lệnh wc, nó sẽ in ra tổng số số ký tự trong một tệp.
$ wc -m tecmint.txt
112 tecmint.txt
5. Đếm Số lượng Byte trong một Tệp
Khi sử dụng tùy chọn -c
, nó sẽ in ra số lượng byte trong một tệp.
$ wc -c tecmint.txt
112 tecmint.txt
6. Hiển thị Độ dài của Dòng Dài nhất trong Tệp
Lệnh wc cho phép sử dụng tham số -L
, nó có thể được sử dụng để in ra độ dài của dòng dài nhất (số ký tự) trong một tệp.
Vì vậy, chúng ta có dòng ký tự dài nhất (‘Scientific Linux‘) trong một tệp.
$ wc -L tecmint.txt
16 tecmint.txt
7. Kiểm tra các Tùy chọn của lệnh wc
Để biết thêm thông tin và trợ giúp về lệnh wc, chỉ cần chạy lệnh ‘wc --help
’ hoặc ‘man wc
’ từ dòng lệnh.
$ wc --help
OR
$ man wc
Cách sử dụng lệnh wc
Usage: wc [OPTION]... [FILE]...
or: wc [OPTION]... --files0-from=F
Print newline, word, and byte counts for each FILE, and a total line if
more than one FILE is specified. A word is a non-zero-length sequence of
characters delimited by white space.
With no FILE, or when FILE is -, read standard input.
The options below may be used to select which counts are printed, always in
the following order: newline, word, character, byte, maximum line length.
-c, --bytes print the byte counts
-m, --chars print the character counts
-l, --lines print the newline counts
--files0-from=F read input from the files specified by
NUL-terminated names in file F;
If F is - then read names from standard input
-L, --max-line-length print the maximum display width
-w, --words print the word counts
--help display this help and exit
--version output version information and exit
GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Full documentation at: <https://www.gnu.org/software/coreutils/wc>
or available locally via: info '(coreutils) wc invocation'
Trong bài viết này, bạn đã tìm hiểu về lệnh wc, một tiện ích dòng lệnh đơn giản để đếm số lượng dòng, từ, ký tự và byte trong các tệp văn bản. Có rất nhiều lệnh Linux khác như thế, bạn nên học và nắm vững kỹ năng dòng lệnh của mình.