Lệnh file trong linux với các ví dụ dễ hiểu

Lệnh file trong Linux là một công cụ hữu ích giúp xác định loại tệp một cách nhanh chóng và dễ dàng. Nó kiểm tra nội dung tệp và hiển thị thông tin mô tả, thay vì chỉ dựa vào phần mở rộng tên tệp. Với lệnh này, bạn có thể biết tệp đó là văn bản, hình ảnh, hay một chương trình thực thi, giúp quản lý hệ thống hiệu quả hơn.

Lệnh file trong linux là gì?

Lệnh file trong Linux là một công cụ mạnh mẽ giúp bạn xác định loại tệp mà không cần nhìn vào phần mở rộng của nó. Command file in linux sẽ kiểm tra nội dung bên trong tệp và sử dụng các "magic number" để xác định định dạng thực sự của nó. Điều này rất hữu ích khi bạn gặp một tệp không có phần mở rộng hoặc có phần mở rộng không chính xác. Ví dụ, nó có thể cho bạn biết một tệp là ảnh JPEG, một đoạn mã Python, hay chỉ là một tệp văn bản đơn thuần. Sử dụng lệnh này giúp bạn tránh mở nhầm tệp và đảm bảo bạn sử dụng đúng chương trình để xử lý nó.

Khám phá Lệnh file

Trong bước này, chúng ta sẽ khám phá lệnh file đa năng trong Linux.

Lệnh file được dùng để xác định loại tệp, ví dụ tệp văn bản, tệp thực thi hoặc tệp nhị phân.

Hãy bắt đầu bằng cách chạy lệnh file trên một vài tệp khác nhau nhé.

cd ~/project
file README.md
file Dockerfile
file example.zip

Ví dụ về kết quả:

README.md: Markdown document, UTF-8 text
Dockerfile: ASCII text
example.zip: Zip archive data, at least v2.0 to extract

Như bạn thấy, lệnh file cung cấp thông tin về loại của mỗi tệp.

Với tệp README.md, nó xác định là tài liệu Markdown, định dạng UTF-8.

Đối với Dockerfile, nó nhận ra đây là một tệp văn bản ASCII thông thường.

Còn với tệp example.zip, nó xác định đây là một kho lưu trữ Zip.

Lệnh file cũng có thể được dùng để xác định loại tệp dựa trên nội dung.

Ngay cả khi phần mở rộng của tệp không khớp với loại tệp thực tế, nó vẫn hoạt động.

Hãy thử một ví dụ để hiểu rõ hơn về cách lệnh này hoạt động nhé.

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

Ví dụ về kết quả:

example.txt: ASCII text

Mặc dù phần mở rộng của tệp là .txt, lệnh file vẫn xác định đúng là tệp ASCII.

Lệnh file là một công cụ mạnh mẽ để hiểu nội dung của các tệp trên hệ thống.

Nó đặc biệt hữu ích khi xử lý các loại tệp không xác định hoặc bất thường.

Xác định các loại tệp tin

Trong bước này, chúng ta sẽ học cách dùng lệnh file để xác định các loại tệp tin khác nhau.

Chúng ta sẽ nhận diện tệp tin văn bản, tệp tin nhị phân và cả các tệp tin đã được nén.

Hãy bắt đầu bằng việc tạo ra một vài tệp tin mẫu để chúng ta có thể thực hành:

cd ~/project
echo "This is a text file" > text_file.txt
dd if=/dev/urandom of=binary_file.bin bs=1M count=1 > /dev/null 2>&1
gzip text_file.txt

Bây giờ, hãy sử dụng lệnh file để xác định xem các tệp tin này thuộc loại nào nhé:

file text_file.txt
file binary_file.bin
file text_file.txt.gz

Ví dụ về kết quả trả về:

text_file.txt: ASCII text
binary_file.bin: data
text_file.txt.gz: gzip compressed data, was "text_file.txt", last modified: Tue Apr 18 12:34:56 2023, max compression

Như bạn thấy, lệnh file đã xác định chính xác text_file.txt là tệp tin ASCII text.

Lệnh cũng nhận diện binary_file.bin là tệp tin binary data và text_file.txt.gz là tệp tin gzip.

Lệnh file còn có thể cung cấp thông tin chi tiết hơn về nội dung của tệp tin nữa đấy.

Ví dụ, chúng ta hãy thử lệnh này trên một tệp tin đã được nén xem sao nhé:

file -z text_file.txt.gz

Ví dụ về kết quả trả về:

text_file.txt.gz: gzip compressed data, was "text_file.txt", last modified: Tue Apr 18 12:34:56 2023, max compression

Tùy chọn -z bảo lệnh file xem xét bên trong tệp tin nén và cho biết thông tin về tệp gốc.

Hiểu cách dùng lệnh file để xác định các loại tệp tin là một kỹ năng quan trọng.

Kỹ năng này rất cần thiết khi bạn làm việc với tệp tin trong môi trường Linux.

Xử Lý Các Tập Tin Nén

Trong bước này, chúng ta sẽ học cách làm việc với các tập tin nén bằng lệnh file và các tiện ích Linux khác.

Đầu tiên, hãy tạo một tập tin nén để thực hành các thao tác liên quan đến nén:

cd ~/project
tar -czf archive.tar.gz text_file.txt binary_file.bin

Bây giờ, chúng ta sẽ sử dụng lệnh file để xác định loại của tập tin nén vừa tạo:

file archive.tar.gz

Ví dụ về kết quả trả về:

archive.tar.gz: gzip compressed data, last modified: Tue Apr 18 12:34:56 2023, max compression

Lệnh file đã xác định chính xác tập tin archive.tar.gz là một tập tin nén gzip.

Để giải nén nội dung của tập tin nén, chúng ta có thể sử dụng lệnh tar như sau:

tar -xzf archive.tar.gz
ls -l

Ví dụ về kết quả trả về:

total 2048
-rw-r--r-- 1 labex labex     20 Apr 18 12:34 binary_file.bin
-rw-r--r-- 1 labex labex     19 Apr 18 12:34 text_file.txt

Lệnh tar -xzf giải nén nội dung của tập tin archive.tar.gz, ta thấy các tập tin binary_file.bintext_file.txt đã được giải nén.

Linux cũng cung cấp các công cụ khác để làm việc với tập tin nén, ví dụ như gzipgunzip cho tập tin gzip, và unzip cho tập tin ZIP. Hãy thử dùng gunzip để giải nén tập tin text_file.txt.gz đã tạo trước đó:

gunzip text_file.txt.gz
file text_file.txt

Ví dụ về kết quả trả về:

text_file.txt: ASCII text

Lệnh gunzip giải nén tập tin text_file.txt.gz, và lệnh file xác nhận tập tin đã giải nén là một tập tin văn bản ASCII.

Hiểu cách làm việc với các tập tin nén là một kỹ năng cần thiết để quản lý tập tin và dữ liệu trong môi trường Linux.

Kết luận cho linux file command

```html

Tóm lại, lệnh `file` là một công cụ vô cùng hữu ích để xác định loại tệp trong Linux. Nó giúp bạn nhanh chóng biết được tệp đó là gì, dù nó có phần mở rộng hay không. Với linux file command, bạn có thể dễ dàng phân loại và xử lý các tệp khác nhau một cách hiệu quả. Hãy thử nghiệm với các tùy chọn khác nhau để khám phá thêm sức mạnh của nó. Hy vọng bài viết này đã giúp bạn hiểu rõ hơn về cách sử dụng lệnh `file`. Chúc bạn thành công trong việc quản lý tệp tin trên hệ thống Linux của mình! Đừng ngần ngại tìm hiểu thêm các lệnh khác để làm chủ hệ thống nhé. Việc này sẽ giúp bạn trở thành một người dùng Linux thành thạo hơn đấy.

```
Last Updated : 18/10/2025