Lệnh wc trong Linux

Giới thiệu

Trong lab này, bạn sẽ học cách sử dụng lệnh wc (word count) của Linux để đếm số dòng, số từ và số ký tự trong một file. Lab này bao gồm việc hiểu cách sử dụng cơ bản của lệnh wc, cũng như kết hợp nó với các lệnh Linux khác để thực hiện các tác vụ xử lý văn bản nâng cao hơn. Bạn sẽ bắt đầu bằng cách tạo một file văn bản mẫu và sau đó sử dụng lệnh wc để đếm số dòng, số từ và số ký tự trong file đó. Ngoài ra, bạn sẽ khám phá cách sử dụng lệnh wc với các lệnh Linux khác, chẳng hạn như lsfind, để thực hiện các thao tác xử lý văn bản khác nhau.

Tìm hiểu về lệnh wc

Trong bước này, bạn sẽ tìm hiểu về lệnh wc (word count) trong Linux. Lệnh wc là một công cụ mạnh mẽ cho phép bạn đếm số dòng, số từ và số ký tự trong một file.

Để bắt đầu, hãy tạo một file văn bản mẫu:

echo "This is a sample text file." > sample.txt

Bây giờ, hãy sử dụng lệnh wc để đếm số dòng, số từ và số ký tự trong file sample.txt:

wc sample.txt

Ví dụ đầu ra:

  1  7 28 sample.txt

Đầu ra cho thấy file có 1 dòng, 7 từ và 28 ký tự.

Bạn cũng có thể sử dụng các tùy chọn -l, -w-c để chỉ hiển thị số lượng cụ thể mà bạn quan tâm:

wc -l sample.txt ## Count lines
wc -w sample.txt ## Count words
wc -c sample.txt ## Count characters

Ví dụ đầu ra:

1 sample.txt
7 sample.txt
28 sample.txt

Lệnh wc cũng có thể được sử dụng với các lệnh Linux khác, chẳng hạn như ls hoặc find, để đếm số dòng, số từ hoặc số ký tự trong đầu ra. Ví dụ:

ls -l | wc -l          ## Count the number of files in the current directory
find . -type f | wc -l ## Count the number of files in the current directory and its subdirectories

Bây giờ bạn đã có hiểu biết cơ bản về lệnh wc, hãy chuyển sang bước tiếp theo, nơi bạn sẽ học cách sử dụng nó để đếm số từ, số dòng và số ký tự trong một file.

Đếm số từ, số dòng và số ký tự trong một file

Trong bước này, bạn sẽ học cách sử dụng lệnh wc để đếm số từ, số dòng và số ký tự trong một file.

Hãy bắt đầu bằng cách tạo một file văn bản mới với một số nội dung mẫu:

cat > sample.txt << EOF
This is the first line.
This is the second line.
This is the third line.
EOF

Bây giờ, hãy sử dụng lệnh wc để đếm số từ, số dòng và số ký tự trong file sample.txt:

wc sample.txt

Ví dụ đầu ra:

  3  9 66 sample.txt

Đầu ra cho thấy file có 3 dòng, 9 từ và 66 ký tự.

Bạn cũng có thể sử dụng các tùy chọn -l, -w-c để chỉ hiển thị số lượng cụ thể mà bạn quan tâm:

wc -l sample.txt ## Count lines
wc -w sample.txt ## Count words
wc -c sample.txt ## Count characters

Ví dụ đầu ra:

3 sample.txt
9 sample.txt
66 sample.txt

Lệnh wc có thể đặc biệt hữu ích khi được kết hợp với các lệnh Linux khác, chẳng hạn như find hoặc grep. Ví dụ: bạn có thể sử dụng find để đếm tổng số dòng trong tất cả các file văn bản trong một thư mục:

find . -type f -name "*.txt" -exec wc -l {} \; | awk '{total += $1} END {print total}'

Lệnh này sẽ tìm kiếm đệ quy thư mục hiện tại và các thư mục con của nó cho tất cả các file .txt, và sau đó sử dụng wc -l để đếm số dòng trong mỗi file. Lệnh awk sau đó được sử dụng để tính tổng số dòng.

Bây giờ bạn đã học cách sử dụng lệnh wc để đếm số từ, số dòng và số ký tự trong một file, hãy chuyển sang bước tiếp theo, nơi bạn sẽ khám phá các trường hợp sử dụng nâng cao hơn cho lệnh wc.

Kết hợp wc với các lệnh Linux khác

Trong bước này, bạn sẽ học cách kết hợp lệnh wc với các lệnh Linux khác để thực hiện các tác vụ xử lý văn bản nâng cao hơn.

Hãy bắt đầu bằng cách tạo một thư mục với một số file văn bản mẫu:

mkdir sample_files
cd sample_files
echo "This is file1.txt" > file1.txt
echo "This is file2.txt" > file2.txt
echo "This is file3.txt" > file3.txt

Bây giờ, hãy sử dụng lệnh find để đếm tổng số dòng trong tất cả các file văn bản trong thư mục sample_files:

find . -type f -name "*.txt" -exec wc -l {} \; | awk '{total += $1} END {print total}'

Ví dụ đầu ra:

3

Lệnh này sử dụng find để định vị tất cả các file có phần mở rộng .txt trong thư mục hiện tại và các thư mục con của nó, sau đó sử dụng wc -l để đếm số dòng trong mỗi file. Lệnh awk được sử dụng để tính tổng số dòng.

Bạn cũng có thể sử dụng lệnh wc với grep để đếm số dòng khớp với một mẫu cụ thể. Ví dụ: hãy đếm số dòng trong thư mục sample_files có chứa từ "file":

grep -l "file" *.txt | wc -l

Ví dụ đầu ra:

3

Lệnh này sử dụng grep -l để tìm tất cả các file trong thư mục hiện tại có chứa từ "file", và sau đó sử dụng wc -l để đếm số file phù hợp.

Cuối cùng, hãy sử dụng lệnh wc để đếm tổng số từ trong tất cả các file văn bản trong thư mục sample_files:

find . -type f -name "*.txt" -exec wc -w {} \; | awk '{total += $1} END {print total}'

Ví dụ đầu ra:

15

Lệnh này sử dụng find để định vị tất cả các file văn bản trong thư mục, sau đó sử dụng wc -w để đếm số từ trong mỗi file và cuối cùng sử dụng awk để tính tổng số từ.

Bằng cách kết hợp lệnh wc với các lệnh Linux khác, bạn có thể thực hiện một loạt các tác vụ xử lý văn bản, chẳng hạn như đếm số file, số dòng, số từ hoặc số ký tự trong một thư mục hoặc một tập hợp các file.

Tóm tắt

Trong lab này, bạn đã tìm hiểu về lệnh wc (word count) trong Linux, cho phép bạn đếm số dòng, số từ và số ký tự trong một file. Bạn bắt đầu bằng cách tạo một file văn bản mẫu và sử dụng lệnh wc để đếm số dòng, số từ và số ký tự trong file đó. Bạn cũng đã khám phá các tùy chọn khác nhau (-l, -w-c) để chỉ hiển thị số lượng cụ thể mà bạn quan tâm. Ngoài ra, bạn đã học cách sử dụng lệnh wc với các lệnh Linux khác, chẳng hạn như lsfind, để đếm số dòng, số từ hoặc số ký tự trong đầu ra của chúng. Cuối cùng, bạn đã thực hành sử dụng lệnh wc để đếm số từ, số dòng và số ký tự trong một file bạn đã tạo.

Lab cung cấp một sự hiểu biết toàn diện về lệnh wc và các ứng dụng thực tế của nó trong Linux. Giờ đây, bạn đã có kiến thức để sử dụng hiệu quả lệnh wc để phân tích các file văn bản và đầu ra của các lệnh Linux khác. Bạn có thể sử dụng kiến thức này cho các tác vụ **systemadmin** của mình.

400+ câu lệnh phổ biến trong Linux