Lệnh cat Linux là một trong những lệnh cơ bản phổ biến nhất giúp đọc, hiển thị nội dung file và kết hợp nhiều file lại với nhau. Trong bài viết dưới đây, mình sẽ hướng dẫn bạn cách sử dụng lệnh cat Linux để kiểm tra các thông số CPU chính xác.
Những điểm chính
- Khái niệm lệnh
cat: Hiểu rõ lệnhcatlà gì và các công dụng chính của lệnh cat trong việc hiển thị, tạo và nối nội dung file. - Các tùy chọn phổ biến: Nắm được bảng các tùy chọn quan trọng của lệnh cat giúp tùy chỉnh hiển thị nội dung file một cách chi tiết và rõ ràng.
- Lý do nên dùng lệnh cat để kiểm tra thông số CPU: Nắm rõ các lý do bạn nên dùng lệnh cat để kiểm tra thông số CPU.
- Các cách kiểm tra CPU: Nắm vững các phương pháp để kiểm tra thông tin CPU, từ cách hiện đại và dễ đọc nhất với
lscpuđến cách chi tiết hơn vớicat /proc/cpuinfo. - Giải đáp thắc mắc (FAQ): Nhận được câu trả lời cho các câu hỏi thực tế về cấu trúc file
/proc/cpuinfo, lý do sử dụnguniqvà khi nào nên chọn phương pháp kiểm tra phù hợp.
Lệnh cat trong Linux là gì?
Lệnh cat (concatenate) là một trong những lệnh tiêu chuẩn và phổ biến nhất trên các hệ điều hành Unix và Linux với chức năng chính là đọc, hiển thị nội dung tệp tin ra màn hình, tạo tệp mới hoặc nối ghép nhiều tệp tin lại với nhau. Lệnh cat có các công dụng chính sau:
- Hiển thị nội dung file: Đọc và in toàn bộ nội dung của một hoặc nhiều tệp ra màn hình (chuẩn đầu ra).
- Tạo file mới: Kết hợp với toán tử chuyển hướng để nhập dữ liệu và tạo tệp nhanh chóng.
- Nối nội dung file: Nối nội dung của hai hoặc nhiều file lại với nhau và có thể lưu kết quả vào một file mới.

Cú pháp của lệnh cat như sau:
cat [TÙY CHỌN] [TÊN_FILE]Trong đó:
- TÙY CHỌN: Bạn có thể dùng lệnh
cat --helpđể xem đầy đủ tùy chọn với lệnh cat. - TÊN_FILE: Tên các file cần áp dụng lệnh.
Các tùy chọn phổ biến của lệnh cat
Dưới đây là bảng tổng hợp các tùy chọn (options) phổ biến nhất của lệnh cat:
| Tùy chọn | Tên đầy đủ | Mô tả chi tiết |
|---|---|---|
-n | --number | Đánh số thứ tự tất cả các dòng khi xuất ra màn hình. |
-b | --number-nonblank | Đánh số thứ tự các dòng có nội dung (bỏ qua dòng trống). |
-s | --squeeze-blank | Gom nhóm nhiều dòng trống liên tiếp thành duy nhất một dòng trống. |
-E | --show-ends | Hiển thị ký tự $ ở cuối mỗi dòng (giúp nhận biết khoảng trắng thừa). |
-T | --show-tabs | Hiển thị các ký tự Tab dưới dạng ^I. |
-v | --show-nonprinting | Hiển thị các ký tự không in được (ngoại trừ Tab và ký tự xuống dòng). |
-A | --show-all | Tương đương với -vET (hiển thị tất cả ký tự ẩn, Tab và kết thúc dòng). |
Vì sao nên dùng lệnh cat để kiểm tra thông số CPU?
Trong Linux, thông tin về phần cứng được hệ điều hành lưu trữ dưới dạng các tệp tin ảo trong thư mục /proc. Việc sử dụng lệnh cat kết hợp với đường dẫn /proc/cpuinfo (cụ thể là lệnh: cat /proc/cpuinfo) được coi là phương pháp tiêu chuẩn để kiểm tra CPU vì những lý do sau:
- Truy xuất dữ liệu trực tiếp từ nhân (Kernel): Tệp /proc/cpuinfo không phải là một tệp văn bản thông thường trên ổ cứng, mà là một tệp ảo được nhân Linux tạo ra để báo cáo trạng thái phần cứng hiện tại. Do đó, lệnh cat sẽ hiển thị thông tin chính xác và thực tế nhất về CPU mà hệ thống đang nhận diện.
- Không cần cài đặt thêm phần mềm: Lệnh cat được cài đặt mặc định trên hầu hết mọi bản phân phối Linux (Ubuntu, CentOS, Debian,…). Người dùng có thể kiểm tra cấu hình ngay lập tức mà không cần cài đặt các công cụ bên ngoài như
lshwhayhtop. - Cung cấp thông tin chi tiết và đầy đủ: Kết quả trả về bao gồm tất cả các thông số kỹ thuật sâu của từng nhân, bao gồm: tên dòng chip, số lượng nhân/luồng, tốc độ xung nhịp (MHz), bộ nhớ đệm (Cache size) và các tập lệnh hỗ trợ.
- Dễ dàng kết hợp với các lệnh lọc dữ liệu: Đầu ra dạng văn bản của lệnh cat rất dễ xử lý khi kết hợp với các lệnh khác như
grep. Điều này giúp quản trị viên lọc nhanh thông tin cần thiết.

Cách dùng cat Linux kiểm tra các thông số CPU
Sử dụng lệnh cat /proc/cpuinfo
Phương pháp này lấy dữ liệu trực tiếp từ kernel, cung cấp rất nhiều thông tin chi tiết nhưng đòi hỏi bạn phải biết cách đọc. Bạn tiến hành chạy lệnh sau đây:
cat /proc/cpuinfo
Cách đếm tổng số processor:
grep -c ^processor /proc/cpuinfo Hoặc một cách khác:
cat /proc/cpuinfo | grep "processor" | wc -l Cả hai lệnh trên sẽ đếm chính xác số lượng khối “processor” có trong file, cho bạn tổng số luồng.

Cách lấy tên CPU:
cat /proc/cpuinfo | grep "model name" | uniq
Lệnh uniq dùng để đảm bảo chỉ có một dòng kết quả duy nhất được hiển thị.
Sử dụng lệnh lscpu
Lệnh lscpu là công cụ hiện đại, được thiết kế để cung cấp một bản tóm tắt thông tin CPU một cách rõ ràng và dễ đọc. Bạn chỉ cần gõ như sau:
lscpu
Trong đó bạn cần chú ý các thông tin quan trọng sau:
- Model name: Tên đầy đủ và dòng CPU của bạn.
- Socket(s): Số lượng CPU vật lý được cắm trên bo mạch chủ.
- Core(s) per socket: Số lượng nhân xử lý thực (physical cores) trên mỗi CPU vật lý.
- Thread(s) per core: Số luồng xử lý trên mỗi nhân. Nếu giá trị này là 2, có nghĩa là CPU của bạn đang bật công nghệ Siêu phân luồng (Hyper-Threading).
- CPU(s): Tổng số luồng xử lý mà hệ điều hành nhìn thấy.
Công thức tính:
Tổng số luồng (CPU(s)) = Socket(s) × Core(s) per socket × Thread(s) per core
Ví dụ trên: 8 = 1 × 4 × 2
Các công cụ nâng cao để lấy thông tin sâu hơn
Ngoài ra, Linux còn cung cấp các công cụ khác cho phép bạn lấy thông tin phần cứng từ các nguồn sâu hơn như BIOS/UEFI.
Sử dụng dmidecode để lấy thông tin từ BIOS
Lệnh dmidecode là một công cụ mạnh mẽ để trích xuất thông tin phần cứng mà bo mạch chủ ghi nhận, đặc biệt hữu ích để xác thực các thông số như tốc độ tối đa của CPU.
# Cần quyền sudo để chạy
sudo dmidecode -t processor
Trong đó bạn cần chú ý những thông số quan trọng sau:
- Manufacturer: Xác định nguồn gốc CPU. Trong ảnh là QEMU, nghĩa là đây là một máy ảo.
- Version: Phiên bản BIOS hiện tại.
- Max Speed/Current Speed: Tốc độ tối đa và hiện tại của vi xử lý (đơn vị MHz).
- Core Count: Số lượng nhân vật lý có trong CPU.
- Core Enabled: Số nhân đang thực sự được kích hoạt để sử dụng.
- Thread Count: Số lượng luồng xử lý.
- Socket Designation: Vị trí cắm CPU trên bo mạch (ví dụ: CPU 0, CPU 1).
Sử dụng hwinfo để có báo cáo toàn diện
hwinfo là công cụ chuyên dụng cung cấp báo cáo phần cứng chi tiết nhưng có thể không được cài đặt sẵn trên mọi hệ thống.
# Cài đặt (trên Debian/Ubuntu)
sudo apt install hwinfo
# Cài đặt (trên CentOS/RHEL)
sudo yum install hwinfo
# Chạy lệnh
hwinfo --cpu
Lệnh này sẽ trả về một báo cáo rất dài, bao gồm tất cả các tính năng, thông tin cache, và nhiều hơn nữa, rất hữu ích cho các phân tích chuyên sâu.
Tổng hợp các lệnh lấy thông tin nhanh
Dưới đây là các lệnh bạn có thể copy và paste để lấy nhanh thông tin mình cần:
- Lấy tổng số luồng (logical cores):
nproc
- Lấy tên và dòng CPU:
lscpu | grep "Model name"
- Đếm số CPU vật lý (sockets):
lscpu | grep "Socket(s)"
Câu hỏi thường gặp
Tại sao kết quả của cat /proc/cpuinfo lại dài và lặp lại thông tin nhiều lần?
Vì tệp ảo /proc/cpuinfo liệt kê một khối thông tin chi tiết cho từng luồng xử lý mà hệ điều hành nhận diện. Nếu CPU của bạn có 8 luồng, bạn sẽ thấy 8 khối thông tin gần như giống hệt nhau, chỉ khác ở số thứ tự processor.
Tại sao lại cần dùng lệnh uniq sau khi grep tên model CPU?
Bởi vì lệnh grep "model name" /proc/cpuinfo sẽ trả về dòng tên model cho tất cả các luồng, tạo ra nhiều dòng kết quả giống hệt nhau. Lệnh uniq (unique) sẽ lọc bỏ các dòng trùng lặp liền kề và chỉ giữ lại một dòng duy nhất, giúp kết quả hiển thị gọn gàng hơn.
Có thể chỉnh sửa file /proc/cpuinfo không?
/proc/cpuinfo là một file ảo được tạo ra bởi kernel Linux trong bộ nhớ mỗi khi bạn truy cập, phản ánh trạng thái hiện tại của CPU. Do đó, bạn chỉ có thể đọc chứ không thể chỉnh sửa.
Khi nào nên chọn dùng cat /proc/cpuinfo thay vì chỉ dùng lscpu?
Bạn nên dùng cat /proc/cpuinfo trong các trường hợp sau:
– Khi cần dữ liệu thô cho script: Đầu ra của /proc/cpuinfo có cấu trúc văn bản đơn giản, rất dễ để các script tự động phân tích và trích xuất thông tin.
– Khi cần xem các thông tin chi tiết: cat /proc/cpuinfo hiển thị các thông tin mà lscpu có thể bỏ qua, chẳng hạn như danh sách đầy đủ các “flags” (tập lệnh và tính năng mà CPU hỗ trợ như avx, sse4_2, vmx…).
– Khi làm việc trên các hệ thống rất cũ: Một số hệ thống Linux tối giản hoặc cũ có thể không cài đặt sẵn lscpu, nhưng /proc/cpuinfo thì luôn luôn có.
Việc sử dụng lệnh cat Linux kết hợp với file hệ thống /proc/cpuinfo giúp quản trị viên nắm bắt đầy đủ các thông số kỹ thuật của CPU. Phương pháp này cung cấp dữ liệu trực tiếp về số nhân, luồng và xung nhịp mà không cần cài đặt thêm phần mềm hỗ trợ. Bạn có thể truy cập vào các bài viết khác của mình để tìm hiểu thêm nhiều lệnh Linux hữu ích khác.




