Lệnh 'wc' đếm số dòng, từ và ký tự trong tập tin Linux [6 ví dụ]

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.