Cách xác định loại tệp của tệp bằng Linux

Hầu hết mọi người nhìn vào phần mở rộng của một tập tin và sau đó đoán loại tập tin từ phần mở rộng đó. Ví dụ: khi bạn thấy một tệp có phần mở rộng gif, jpg, bmp hoặc png, bạn sẽ nghĩ đến tệp hình ảnh và khi bạn thấy tệp có đuôi mở rộng, bạn cho rằng tệp đã được nén bằng tiện ích nén zip .

Trong thực tế một tập tin có thể có một phần mở rộng nhưng là một cái gì đó hoàn toàn khác nhau và nếu một tập tin không có phần mở rộng như thế nào bạn có thể xác định loại tập tin?

Trong Linux, bạn có thể tìm ra loại tệp thực sự bằng cách sử dụng lệnh tệp.

Cách hoạt động của lệnh tệp

Theo tài liệu hướng dẫn, lệnh tệp chạy ba bộ kiểm tra đối với một tệp:

Tập kiểm thử đầu tiên trả về một phản hồi hợp lệ làm cho loại tệp được in ra.

Kiểm tra hệ thống tập tin kiểm tra sự trở lại từ một cuộc gọi hệ thống stat. Chương trình sẽ kiểm tra xem tệp có trống không và tệp đó có phải là tệp đặc biệt hay không. Nếu loại tệp được tìm thấy trong tệp tiêu đề hệ thống, nó sẽ được trả về dưới dạng loại tệp hợp lệ.

Các kiểm tra ma thuật kiểm tra nội dung của một tập tin và đặc biệt là một vài byte lúc đầu giúp xác định loại tập tin. Có nhiều tệp khác nhau được sử dụng để giúp kết hợp một tệp với loại tệp của nó và chúng được lưu trữ trong / etc / magic, / usr / share / misc / magic.mgc, / usr / share / misc / magic. Bạn có thể ghi đè lên các tệp này bằng cách đặt một tệp trong thư mục chính của bạn được gọi là $ HOME / .magic.mgc hoặc $ HOME / .magic.

Các bài kiểm tra cuối cùng là các bài kiểm tra ngôn ngữ. Tệp được kiểm tra để xem đó có phải là tệp văn bản hay không. Bằng cách kiểm tra vài byte đầu tiên của một tệp, bạn có thể suy ra cho dù đó là một ASCII, UTF-8, UTF-16 hoặc ở định dạng khác xác định tệp dưới dạng tệp văn bản. Khi bộ ký tự đã được suy ra, tệp được kiểm tra dựa trên các ngôn ngữ khác nhau. Ví dụ là chương trình tập tin ac.

Nếu không có thử nghiệm nào làm việc thì đầu ra đơn giản là dữ liệu.

Cách sử dụng lệnh tập tin

Lệnh tập tin có thể được sử dụng như sau:

tên tệp

Ví dụ tưởng tượng bạn có một tập tin gọi là file1 bạn sẽ chạy lệnh sau:

tập tin tập tin1

Đầu ra sẽ là một cái gì đó như thế này:

file1: Dữ liệu ảnh PNG, 640 x 341, 8 bit / màu RGB, không xen kẽ

Đầu ra được hiển thị xác định file1 là một tệp hình ảnh hoặc để chính xác hơn một tệp đồ họa mạng di động (PNG).

Các loại tệp khác nhau tạo ra các kết quả khác nhau như sau:

Tùy chỉnh đầu ra từ lệnh tập tin

Theo mặc định, lệnh tệp cung cấp tên tệp và sau đó tất cả chi tiết bên trên tệp. Nếu bạn chỉ muốn các chi tiết không có tên tệp lặp lại, hãy sử dụng công tắc sau:

file -b file1

Đầu ra sẽ là một cái gì đó như thế này:

Dữ liệu hình ảnh PNG, 640 x 341, 8 bit / màu RGB, không xen kẽ

Bạn cũng có thể thay đổi dấu phân cách giữa tên tệp và loại.

Theo mặc định, dấu phân cách là dấu hai chấm (:) nhưng bạn có thể thay đổi nó thành bất kỳ thứ gì bạn thích như biểu tượng đường ống như sau:

file -F '|' file1

Đầu ra sẽ là một cái gì đó như thế này:

file1 | Dữ liệu hình ảnh PNG, 640 x 341, 8 bit / màu RGB, không xen kẽ

Xử lý nhiều tệp

Theo mặc định, bạn sẽ sử dụng lệnh tệp đối với một tệp. Tuy nhiên, bạn có thể chỉ định tên tệp chứa danh sách các tệp cần xử lý bằng lệnh tệp:

Ví dụ: mở một tệp có tên là testfiles bằng cách sử dụng trình soạn thảo nano và thêm các dòng này vào nó:

Lưu tệp và chạy lệnh tệp sau:

tệp tin testff

Đầu ra sẽ là một cái gì đó như thế này:

/ etc / passwd: văn bản ASCII
/etc/pam.conf: văn bản ASCII
/ etc / opt: thư mục

Tệp nén

Theo mặc định khi bạn chạy lệnh tệp đối với tệp nén, bạn sẽ thấy kết quả đầu ra như sau:

file.zip: Dữ liệu lưu trữ ZIP, ít nhất là V2.0 để trích xuất

Trong khi điều này cho bạn biết rằng tệp là tệp lưu trữ bạn thực sự không biết nội dung của tệp. Bạn có thể xem bên trong tệp zip để xem các loại tệp của tệp trong tệp nén.

Lệnh sau chạy lệnh tệp đối với các tệp bên trong tệp ZIP:

file -z tên tập tin

Đầu ra sẽ hiển thị các loại tệp trong tệp lưu trữ.

Tóm lược

Nói chung, hầu hết mọi người sẽ chỉ đơn giản là sử dụng lệnh tập tin để tìm loại tệp cơ bản nhưng để tìm hiểu thêm về tất cả các khả năng mà lệnh tệp cung cấp, hãy nhập thông tin sau vào cửa sổ đầu cuối:

người đàn ông tập tin