Xác định xem một tệp cụ thể có được nén không


15

Làm thế nào để biết trong Linux liệu một tệp cụ thể có bị nén hay không sử dụng lệnh?


6
Xác định "nén". Các tệp ogg, mp3, gz, zip, xz, rar, 7z, bz2, upx được nén, các tệp deb, vòng / phút được nén theo định nghĩa của bạn?
Stéphane Chazelas

Câu trả lời:


18

Bạn có thể thử sử dụng file, ví dụ:

$ file test.sh.gz
test.sh.gz: gzip compressed data, was "test.sh", from Unix, last modified: Wed Feb  6 14:35:33 2013

Điều này có hoạt động nếu tệp là một liên kết tượng trưng đến một tệp nén?
bli

@bli không, ít nhất là không có trên Ubuntu của tôi ở đây.
Leonid

2

Chạy filelệnh trên nó. Nó sẽ xác định các tệp nén, cũng như các định dạng tệp phổ biến khác.

Lưu ý rằng ZIP là một định dạng chứa phổ biến. Ví dụ: các tệp EPUB và OpenDocument thực sự là các tệp ZIP có nội dung cụ thể. Phiên bản filenhận dạng tệp OpenDocument của tôi - nhưng nếu không phải tệp của bạn, có thể nói rằng tệp OpenDocument của bạn là tệp ZIP. Đây có thể không phải là kết quả mà bạn có trong tâm trí :).

Để trở thành mô phạm, có lẽ bạn không có nghĩa là "tệp này được nén", như OpenDocument hoặc thậm chí là hình ảnh được nén dưới dạng PNG hoặc JPEG. Bạn có thể có nghĩa là "tệp này là tệp lưu trữ", như ZIP, unix tar hoặc tệp lưu trữ một tệp như gzip.

Thông thường, bạn chỉ cần nhìn vào phần mở rộng tập tin, như trên Windows. Giống như .ZIP có nghĩa là tệp ZIP, .gz có nghĩa là gzip. Trên Linux, bạn cũng có thể thấy .bz2 (bunzip2) và .xz (xz).


1

Bạn có thể xác định xem một tệp có giống định dạng nén hay không bằng cách chạy filelệnh.

file lorem.txt lorem.txt.gz
lorem.txt:    ASCII text
lorem.txt.gz: gzip compressed data, from Unix, last modified: Thu Feb  7 02:10:44 2013, max compression

filesẽ chỉ nói "dữ liệu" nếu nó không nhận dạng được định dạng. Ngoài ra, tùy thuộc vào bạn để tìm hiểu xem cái gì được nén hay không (ví dụ: văn bản ASCII văn bản, tính năng âm thanh, âm thanh WAVE không bị nén; .

Một cách khác để phát hiện nếu một tập tin có vẻ bị nén là cố gắng nén nó. Nếu bạn không thể giảm đáng kể kích thước, tệp có thể được nén hoặc mã hóa.

wc -c somefile
gzip <somefile | wc -c
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.