Lệnh file trong Linux là một công cụ giúp bạn nhận diện nhanh chóng và chính xác loại tệp tin, bất kể định dạng của file. Trong bài viết này, mình sẽ hướng dẫn bạn cách sử dụng lệnh file thông qua các ví dụ cụ thể, giúp bạn hiểu rõ chức năng, cơ chế hoạt động và cách ứng dụng hiệu quả lệnh này để quản lý và phân loại file trong hệ thống Linux.
Những điểm chính cần nắm
Dưới đây là những nội dung chính bạn có thể nắm sau khi đọc bài lệnh file trong Linux, đã được mình tổng hợp như sau:
- Định nghĩa về lệnh file: Đây là lệnh giúp bạn kiểm tra và nhận diện nhanh chóng loại file ở bất kể dạng của file.
- Cú pháp lệnh file: Bạn sẽ biết cú pháp của lệnh file và được giải thích các thành phần có trong cú pháp.
- Các tùy chọn của lệnh: Được cung cấp một số tùy chọn phổ biến cho phép tùy chỉnh kết quả trả về và kiểm soát chi tiết hơn quá trình xác định loại file.
- Các ví dụ: Bạn sẽ được hướng dẫn sử dụng thông qua 9 ví dụ cụ thể được giải thích rõ ràng và cho hình ảnh cụ thể giúp bạn dễ nắm bắt.
- Vietnix – Nhà cung cấp dịch vụ hosting và VPS tốc độ cao.
Lệnh file trong Linux là gì?
Lệnh file trong Linux kiểm tra từng file được truyền dưới dạng đối số để xác định loại của file đó. Trong quá trình này, hệ thống chạy ba loại kiểm tra và kiểm tra tiếp theo sẽ xác định loại file. Dưới đây là mô tả chi tiết về từng bước kiểm tra:
- Kiểm tra hệ thống file (filesystem test): Bước này kiểm tra xem file có rỗng hay thuộc một loại đặc biệt nào đó hay không. Kiểm tra này thực hiện dựa trên thông tin trả về từ lệnh stat.
- Kiểm tra số ma thuật (magic test): Bước này tập trung vào các file có định dạng dữ liệu cố định. Magic test sử dụng khái niệm “số ma thuật” (magic number) – một chuỗi ký tự đặc biệt thường nằm ở đầu file, giúp xác định phần mở rộng và loại của file.
- Kiểm tra ngôn ngữ (language test): Bước này xác định ngôn ngữ lập trình được sử dụng để viết file. Kiểm tra ngôn ngữ sẽ tìm kiếm một chuỗi ký tự đặc trưng, có thể xuất hiện ở bất kỳ vị trí nào trong vài khối dữ liệu đầu tiên của file.
Đầu tiên, hệ thống kiểm tra xem file có phải là một loại file đặc biệt như thiết bị hay không. Nếu không, hệ thống tiếp tục kiểm tra cấu trúc của file để xác định định dạng dựa trên dữ liệu bên trong. Cuối cùng, nếu hai bước trên vẫn chưa đủ rõ ràng, hệ thống sẽ phân tích thêm các thông tin về file để đưa ra kết luận chính xác nhất về loại tệp.
Để bạn có thể thực hành quy trình trên một cách an toàn và linh hoạt, một môi trường thử nghiệm an toàn và chuyên nghiệp là rất cần thiết. Dịch vụ VPS Linux của Vietnix chính là lựa chọn tối ưu để bạn thoải mái khám phá và thực hành các lệnh mà không ảnh hưởng đến hệ thống cá nhân. Với máy chủ ảo của Vietnix, bạn sẽ có không gian phát triển và kiểm thử linh hoạt, ổn định, giúp nâng cao kỹ năng một cách an toàn và hiệu quả.
Cú pháp của lệnh file
Cú pháp lệnh file trong Linux rất đơn giản, bao gồm một hoặc nhiều tùy chọn, theo sau là tên của các file cần kiểm tra.
file [OPTION]... FILE …
Trong đó:
- [OPTION]…: Phần này biểu thị cho các tùy chọn bổ sung mà bạn có thể sử dụng với lệnh file. Dấu ba chấm … cho biết bạn có thể sử dụng nhiều tùy chọn cùng lúc.
- FILE …: Phần này biểu thị cho tên của một hoặc nhiều file mà bạn muốn kiểm tra. Dấu ba chấm … cho biết bạn có thể chỉ định nhiều file cùng lúc.
7 tùy chọn phổ biến của lệnh file trong Linux
Lệnh file trong Linux cung cấp một số tùy chọn cho phép bạn tùy chỉnh kết quả trả về và kiểm soát chi tiết hơn quá trình xác định loại file. Dưới đây là một số tùy chọn hữu ích nhất:
Tùy chọn | Chức năng |
---|---|
-b | Không hiển thị tên file trong kết quả. |
-c | Hiển thị định dạng phân tích cú pháp của file. |
-d | Hiển thị thông tin gỡ lỗi của file. |
-f | Đọc tên file từ một file danh sách. |
-i | Hiển thị chuỗi mime-type làm kết quả. |
-s | Xác định loại của các file đặc biệt. |
-z | Xác định loại của các file nén. |
Lưu ý
- Các tùy chọn trong giao diện dòng lệnh Linux (CLI) đều phân biệt chữ hoa chữ thường.
- Để xem danh sách đầy đủ các tùy chọn của lệnh file, bạn có thể sử dụng lệnh man file.
9 ví dụ thực tế về cách sử dụng lệnh file trong Linux
- Ví dụ 1: Xác định loại file bằng lệnh file trong Linux
- Ví dụ 2: Xác định loại của nhiều file
- Ví dụ 3: Kiểm tra danh sách file trong một file văn bản
- Ví dụ 4: Kiểm tra file đặc biệt bằng lệnh file trong Linux
- Ví dụ 5: Kiểm tra file nén bằng lệnh file trong Linux
- Ví dụ 6: Kiểm tra phiên bản phân tích cú pháp của file
- Ví dụ 7: Hiển thị loại file ở chế độ rút gọn
- Ví dụ 8: Hiển thị kiểu MIME của file bằng lệnh file trong Linux
- Ví dụ 9: Hiển thị thông tin gỡ lỗi của file
Ví dụ 1: Xác định loại file bằng lệnh file trong Linux
Để xác định loại file của một file cụ thể, ví dụ như “custom_interface.txt”, bạn thực hiện theo 2 bước sau:
Bước 1: Bạn hãy mở Terminal Ubuntu.
Bước 2: Rồi sau đó bạn nhập lệnh sau và nhấn Enter
custom_interface.txt
Kết quả: Terminal sẽ hiển thị thông tin về loại của file “custom_interface.txt” hoặc file “word_count.sh”.
Ví dụ 2: Xác định loại của nhiều file
Lệnh file cho phép bạn kiểm tra loại của nhiều file cùng lúc. Bạn chỉ cần liệt kê các file cách nhau bởi dấu cách hoặc sử dụng biểu thức chính quy (regex) để chỉ định phạm vi file. Dưới đây là một số ví dụ minh họa cách truy cập và xác định loại của nhiều file bằng lệnh file:
Trường hợp A: Hiển thị loại của tất cả file trong thư mục hiện tại
Trong trường hợp A này mình sử dụng ký tự đại diện * để hiển thị loại của tất cả file trong thư mục hiện tại. Gồm 2 bước thực hiện bạn có thể theo dõi như sau:
Bước 1: Bạn cần mở Terminal Ubuntu.
Bước 2: Rồi bạn nhập lệnh sau và nhấn Enter.
file *
Kết quả: Terminal sẽ trả về và hiển thị loại của tất cả file trong thư mục hiện tại.
Trường hợp B: Hiển thị loại của tất cả file trong 1 thư mục cụ thể
Để hiển thị loại của tất cả file trong thư mục cụ thể, bạn thực hiện tương tự như mình theo 2 bước sau:
Bước 1: Bạn mở Terminal Ubuntu.
Bước 2: Nhập lệnh bên dưới và bạn nhấn Enter để bắt đầu chạy dòng lệnh.
file /Desktop/file\ simple\ code/*
Kết quả: Terminal sẽ hiển thị loại của tất cả file trong thư mục được chỉ định, ở đây là thư mục “file\ simple\ code/”.
Trường hợp C: Hiển thị loại của các file trong danh sách file cụ thể
Để hiển thị loại của các file từ danh sách cho trước, bạn làm theo mình 2 bước sau:
Bước 1: Tương tự, bạn cũng hãy mở Terminal Ubuntu.
Bước 2: Nhập lệnh bên dưới và nhấn Enter để bắt đầu thực thi lệnh.
file jump.sh jump2.sh vietnix\ AI\ schematics.txt
Kết quả: Terminal sẽ hiển thị loại của cả 3 file được cung cấp trong danh sách.
Trường hợp D: Hiển thị loại của các file trong phạm vi nhất định
Bạn có thể dùng ký hiệu regex trong lệnh file để tìm loại của một nhóm file theo phạm vi ký tự. Tuy nhiên, bạn cần lưu ý rằng kết quả trả về sẽ phân biệt chữ hoa chữ thường. Ví dụ dưới đây mình cần hiển thị loại của các file có tên bắt đầu bằng chữ cái từ “a” đến “g” thì 2 bước thực hiện như sau:
Bước 1: Bạn mở Terminal Ubuntu.
Bước 2: Bạn nhập câu lệnh bên dưới rồi nhấn Enter.
file [a-g]*
Kết quả: Màn hình Terminal sẽ hiển thị loại của các file có tên bắt đầu bằng a-z*.
Ví dụ 3: Kiểm tra danh sách file trong một file văn bản
Bạn có thể sử dụng lệnh file kết hợp với tùy chọn -f để kiểm tra loại của các file được liệt kê trong một file văn bản khác. Ví dụ, để xác định loại của các file được ghi trong file “files.txt”, bạn thực hiện như sau:
Bước 1: Bạn mở Terminal Ubuntu.
Bước 2: Rồi bạn nhập lệnh sau và nhấn Enter:
file -f files.txt
Kết quả: Trong hình ảnh bên dưới, bạn có thể thấy nội dung file “files.txt” bằng lệnh cat trong Linux. Sau đó, bạn sẽ thấy hiển thị loại của từng file được liệt kê trong file “files.txt”.
Ví dụ 4: Kiểm tra file đặc biệt bằng lệnh file trong Linux
Tùy chọn -s của lệnh file cho phép bạn xác định loại của các file đặc biệt, chẳng hạn như file thiết bị. Bạn cần quyền superuser (sử dụng từ khóa sudo) để truy cập các file này. Ví dụ, bạn cần xác định loại của file thiết bị /dev/sda1 (phân vùng đầu tiên của ổ cứng), thực hiện theo 3 bước sau:
Bước 1: Bạn mở Terminal Ubuntu.
Bước 2: Nhập lệnh bên dưới rồi nhấn Enter.
sudo file -s /etc
Bước 3: Sau đó, hệ thống sẽ yêu cầu bạn nhập mật khẩu để xác minh danh tính người dùng. Bạn nhập rồi nhấn Enter lần nữa để thực thi lệnh.
Kết quả: Terminal sẽ hiển thị loại của file đặc biệt “etc”.
Ví dụ 5: Kiểm tra file nén bằng lệnh file trong Linux
Tùy chọn -z của lệnh file cho phép bạn xác định loại của các file nén. Trong ví dụ này, Vietnix sẽ hướng dẫn bạn xác định loại của file nén “Tool Convert to Webp.zip”. Có 3 bước thực hiện như sau:
Bước 1: Như bình thường, bạn cần mở Terminal Ubuntu.
Bước 2: Rồi nhập lệnh tương tự bên dưới, bạn có thể thay đổi đường dẫn file nén sao cho phù hợp với nhu cầu của mình.
file -z Tool\ Convert\ to\ Webp.zip
Bước 3: Bạn hãy nhập mật khẩu khi được yêu cầu và nhấn Enter.
Kết quả: Terminal sẽ hiển thị loại của file “Tool Convert to Webp.zip”.
Hiện nay đối với các file nén gzip, bạn có thể dùng option -z trong lệnh file để xem loại tệp, nhưng với các file nén có định dạng zip, việc này sẽ dẫn đến thông báo lỗi như sau:
Với nguyên nhân trên thì cách tránh lỗi này đơn giản là bạn không cần option này nếu file nén chỉ định là dạng .zip và bạn chỉ dùng -z khi cần xem file nén dạng gzip.
Ví dụ 6: Kiểm tra phiên bản phân tích cú pháp của file
Tùy chọn -c của lệnh file cho phép bạn kiểm tra phiên bản phân tích cú pháp của file. Phiên bản này chứa các quy tắc và mẫu mà hệ thống sử dụng để xác định loại file. Trong ví dụ này, mình sẽ kiểm tra kết quả kiểm tra cho phiên bản đã phân tích của tệp “custom_interface.txt”. Để thực hiện, bạn có thể làm theo 2 bước sau:
Bước 1: Trước tiên, bạn mở Terminal Ubuntu.
Bước 2: Sau đó, bạn gõ lệnh sau và nhấn Enter.
file -c custom_interface.txt
Kết quả: Như bạn có thể thấy rằng Terminal sẽ hiển thị phiên bản phân tích cú pháp của file “custom_interface.txt”.
Ví dụ 7: Hiển thị loại file ở chế độ rút gọn
Bạn có thể hiển thị các loại file ở chế độ tóm tắt bằng lệnh file trong Linux với việc kết hợp tùy chọn -b mà không hiển thị tên file. Ví dụ trong trường hợp này, mình sẽ thực hiện lệnh để hiển thị loại của các file “jobs.txt” và “salary.txt” ở chế độ rút gọn, bạn có thể theo dõi 2 bước thực hiện như sau:
Bước 1: Đầu tiên, bạn mở Terminal Ubuntu.
Bước 2: Tiếp theo, bạn nhập lệnh sau và nhấn Enter:
file -b jobs.txt salary.txt
Kết quả: Terminal sẽ hiển thị loại của từng file ở chế độ rút gọn.
Ví dụ 8: Hiển thị kiểu MIME của file bằng lệnh file trong Linux
Bạn có thể sử dụng lệnh file với tùy chọn -i để hiển thị kiểu MIME của một file. Kiểu MIME là một chuỗi cho phép hệ thống xác định loại file. Trong ví dụ này, mình sẽ tìm ra loại MIME của file jobs.txt và salary.txt, bạn có thể làm theo 2 bước dưới đây để thực hiện.
Bước 1: Trước tiên, bạn mở Terminal Ubuntu.
Bước 2: Sau đó, bạn gõ lệnh sau vào Terminal.
file -i jobs.txt salary.txt
Kết quả: Terminal sẽ hiển thị kiểu MIME của file “jobs.txt” và “salary.txt”. Ở đây, kiểu MIME “text/plain” cho biết file là văn bản thuần túy.
Ví dụ 9: Hiển thị thông tin gỡ lỗi của file
Tùy chọn -d của lệnh file cho phép bạn hiển thị thông tin gỡ lỗi nội bộ của một file. Ví dụ, để hiển thị thông tin gỡ lỗi của file “jobs.txt” như mình dưới đây thì bạn thực hiện như sau:
Bước 1: Đầu tiên, bạn mở Terminal Ubuntu.
Bước 2: Sau đó, bạn gõ lệnh sau và nhấn Enter:
file -d jobs.txt
Kết quả: Terminal sẽ hiển thị thông tin gỡ lỗi của file “jobs.txt”.
Vietnix – Nhà cung cấp dịch vụ hosting và VPS tốc độ cao
Vietnix tự hào cung cấp các giải pháp hosting và VPS đột phá, tối ưu chi phí cho cá nhân và doanh nghiệp Việt Nam. Với hơn 12 năm kinh nghiệm, Vietnix mang đến các dịch vụ uy tín, hiệu suất cao, đảm bảo vận hành ổn định và bảo mật cho website. Đội ngũ nhân viên hỗ trợ chuyên nghiệp của Vietnix luôn sẵn sàng tư vấn chi tiết và cung cấp các giải pháp phù hợp với nhu cầu phát triển của bạn.
Thông tin liên hệ:
- Hotline: 18001093
- Email: sales@vietnix.com.vn
- Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh.
- Website: https://vietnix.vn/
Như vậy, bạn đã được tìm hiểu về lệnh file trong Linux, cú pháp và cách sử dụng để xác định loại của các file trên hệ thống. Hy vọng những thông tin này sẽ giúp bạn sử dụng lệnh file một cách hiệu quả trong các tác vụ quản lý file của mình. Nếu còn bất cứ điều gì thắc mắc, bạn có thể bình luận bên dưới để được giải đáp nhanh nhất và chi tiết nhất. Ngoài ra, bạn muốn tìm hiểu thêm về các lệnh khác, bạn có thể tham khảo các bài viết dưới đây: