Kebanyakan orang melihat ekstensi file dan kemudian menebak jenis file dari ekstensi itu. Misalnya ketika Anda melihat file dengan ekstensi gif, jpg, bmp atau png Anda akan memikirkan file gambar dan ketika Anda melihat file dengan ekstensi zip Anda menganggap file telah dikompresi menggunakan utilitas kompresi zip .
Sebenarnya file dapat memiliki satu ekstensi tetapi menjadi sesuatu yang sama sekali berbeda dan jika file tidak memiliki ekstensi bagaimana Anda dapat menentukan jenis file?
Di Linux Anda dapat mengetahui jenis file yang benar menggunakan perintah file.
Cara Kerja File Perintah
Menurut dokumentasi, perintah file menjalankan tiga set tes terhadap file:
- uji filesystem
- tes sihir
- tes bahasa
Set pertama tes untuk mengembalikan respons yang valid menyebabkan jenis file yang akan dicetak.
Uji filesistem memeriksa pengembalian dari panggilan sistem stat. Program ini memeriksa untuk melihat apakah file kosong dan apakah itu file khusus. Jika jenis file ditemukan di file header sistem, maka akan dikembalikan sebagai jenis file yang valid.
Tes-tes sihir memeriksa isi dari suatu file dan khususnya beberapa byte di awal yang membantu untuk menentukan jenis file. Ada berbagai file yang digunakan untuk membantu mencocokkan file dengan jenis file dan ini disimpan di / etc / magic, / usr / share / misc / magic.mgc, / usr / share / misc / magic. Anda dapat mengganti file ini dengan menempatkan file di folder rumah Anda yang bernama $ HOME / .magic.mgc atau $ HOME / .magic.
Tes terakhir adalah tes bahasa. File diperiksa untuk melihat apakah itu file teks. Dengan menguji beberapa byte pertama dari sebuah file Anda dapat menyimpulkan apakah itu ASCII, UTF-8, UTF-16 atau dalam format lain yang menentukan file sebagai file teks. Setelah set karakter telah disimpulkan file diuji terhadap bahasa yang berbeda. Sebagai contoh adalah program file ac.
Jika tidak ada tes yang berfungsi, hasilnya hanyalah data.
Bagaimana Cara Menggunakan Perintah File
Perintah file dapat digunakan sebagai berikut:
nama file file
Misalnya bayangkan Anda memiliki file bernama file1 Anda akan menjalankan perintah berikut:
file file1
Outputnya akan seperti ini:
file1: data gambar PNG, 640 x 341, 8-bit / warna RGB, non-interlaced
Output yang ditunjukkan menentukan file1 menjadi file gambar atau lebih tepatnya file grafik jaringan portabel (PNG).
Jenis file yang berbeda menghasilkan hasil yang berbeda sebagai berikut:
- Jenis file ISO - DOS / MBR boot sector ISO 9660 CD-Rom filesystem data 'label' (dapat di-boot); partisi 2: ID = 0xef, start-CHS (0x3ff, 254,63), CHOS akhir (0x3ff, 4,63) starter 1496, 4736 sektor
- Jenis file ODS - Spreadsheet OpenDocument
- Jenis file PDF - Dokumen PDF, versi 1.4
- Jenis file CSV - teks ASCII, dengan garis yang sangat panjang, dengan indikator garis CRLF
Sesuaikan Output Dari File Command
Secara default, file command menyediakan nama file dan kemudian semua detail di atas file. Jika Anda hanya menginginkan detail tanpa nama file yang diulang, gunakan switch berikut:
file -b file1
Outputnya akan seperti ini:
Data gambar PNG, 640 x 341, 8-bit / warna RGB, non-interlaced
Anda juga dapat mengubah pembatas antara nama file dan jenisnya.
Secara default, pembatas adalah titik dua (:) tetapi Anda dapat mengubahnya ke apapun yang Anda suka seperti simbol pipa sebagai berikut:
file -F '|' file1
Hasilnya sekarang akan menjadi seperti ini:
file1 | Data gambar PNG, 640 x 341, 8-bit / warna RGB, non-interlaced
Menangani Banyak File
Secara default, Anda akan menggunakan perintah file terhadap satu file. Anda dapat, bagaimanapun, menentukan nama file yang berisi daftar file yang akan diproses oleh perintah file:
Sebagai contoh, buka file bernama testfiles menggunakan editor nano dan tambahkan baris-baris berikut ini:
- / etc / passwd
- /etc/pam.conf
- / etc / opt
Simpan file dan jalankan perintah file berikut:
file -f testfiles
Outputnya akan seperti ini:
/ etc / passwd: teks ASCII
/etc/pam.conf: teks ASCII
/ etc / opt: direktori
File Terkompresi
Secara default ketika Anda menjalankan perintah file terhadap file terkompresi Anda akan melihat output seperti ini:
file.zip: ZIP data arsip, setidaknya V2.0 untuk mengekstrak
Sementara ini memberitahu Anda bahwa file tersebut adalah file arsip Anda tidak benar-benar tahu isi dari file tersebut. Anda dapat melihat di dalam file zip untuk melihat jenis file file dalam file yang dikompresi.
Perintah berikut menjalankan perintah file terhadap file di dalam file ZIP:
file -z filename
Output sekarang akan menunjukkan jenis file file dalam arsip.
Ringkasan
Secara umum, kebanyakan orang hanya akan menggunakan perintah file untuk menemukan jenis file dasar tetapi untuk mengetahui lebih lanjut tentang semua kemungkinan yang ditawarkan perintah file ketik berikut ke jendela terminal:
file man