Pendahuluan
file
Linux perintah membantu menentukan jenis file dan datanya. Perintah tidak memperhitungkan ekstensi file, dan menjalankan serangkaian tes untuk menemukan jenis data file.
Dalam tutorial ini, kami akan menunjukkan kepada Anda bagaimana file
perintah bekerja dan cara menggunakannya.
Prasyarat
- Sistem yang menjalankan Linux.
- Akses ke jendela terminal.
Sintaks Perintah File
file
perintah menggunakan sintaks dasar berikut:
file [option] [file name]
Dalam sintaks di atas, file name
mewakili nama file yang ingin Anda uji. file
perintah melakukan tiga set tes mencoba menentukan jenis file, dalam urutan ini:
- Pengujian sistem file lakukan panggilan sistem stat (2) dan periksa hasilnya terhadap file header sistem. Dengan cara ini,
file
perintah menentukan apakah file adalah tipe umum untuk sistem Anda (seperti file teks, gambar, direktori, dll.). - Tes sihir gunakan serangkaian angka pendek yang disimpan di dekat awal file ("angka ajaib") untuk menguji apakah file tersebut dapat dieksekusi biner dan, jika demikian, tentukan jenisnya. Informasi yang diperlukan untuk melakukan tes ini disimpan di /etc/magic atau /usr/share/misc/magic dari file ajaib yang dikompilasi.
- Tes bahasa gunakan tag khusus untuk menentukan bahasa pemrograman mana yang digunakan untuk menulis file biner yang dapat dieksekusi.
Output perintah memberikan deskripsi singkat tentang file dan tipe data. Misalnya, menggunakan file
perintah untuk menguji file teks:
file example.txt
Opsi Perintah File
file
perintah menggunakan opsi berikut:
Opsi | Deskripsi |
---|---|
--apple | Mengubah output perintah ke yang digunakan oleh versi MacOS yang lebih lama. |
-b, --brief | Mengubah output perintah ke mode singkat. |
-C, --compile | Membuat file keluaran yang berisi versi file atau direktori ajaib yang telah diurai sebelumnya. |
-c, --checking-printout | Memeriksa cetakan untuk versi parsing file ajaib. |
-d | Mencetak informasi debug internal dalam format kesalahan standar. |
-E | Pada kesalahan sistem file, mengeluarkan pesan kesalahan dan keluar. |
-e, --exclude | Mengecualikan pengujian dari daftar pengujian yang dilakukan pada file. |
--exclude-quiet | Mengecualikan pengujian yang file perintah tidak tahu tentang. |
--extension | Mencetak daftar ekstensi yang valid untuk jenis file. |
-F, --separator | Menggunakan string yang disediakan sebagai pemisah antara nama file dan jenis file. |
-f, --files-from | Menggunakan file teks yang disediakan sebagai daftar file yang akan diuji. Daftar hanya boleh berisi satu nama file per baris. |
-h, --no-deference | Menonaktifkan tautan simbolik berikut. |
-i, --mime | Mengubah output perintah menjadi string tipe MIME. |
--mime-type, --mime-encoding | Mengubah output perintah menjadi string tipe MIME dan hanya menampilkan elemen tertentu (tipe atau encoding). |
-k, --keep-going | Melanjutkan pengujian setelah hasil pertama cocok. |
-l, --list | Menampilkan daftar pola yang cocok dalam urutan kekuatan yang menurun. |
-L, --deference | Mengaktifkan tautan simbolik berikut. |
-m, --magic-file | Menggunakan file ajaib alternatif yang disediakan oleh pengguna. |
-N, --no-pad | Tidak memasukkan nama file untuk menyelaraskan dengan output. |
-n, --no-buffer | Menghapus output setelah memeriksa setiap file. |
-p, --preserve-date | Berusaha mempertahankan terakhir kali file diakses agar terlihat seperti file perintah tidak mengujinya. |
-P, --parameter | Menyetel berbagai parameter, seperti byte maksimum atau rekursi, jumlah, dan batas panjang. |
-r, --raw | Menonaktifkan penerjemahan karakter yang tidak dapat dicetak. |
-s, --special-files | Mengaktifkan membaca file khusus. |
-S, --no-sandbox | Menonaktifkan sandboxing pada sistem yang mendukungnya. |
-v, --version | Menampilkan versi file perintah. |
-z, --uncompress | Memeriksa file terkompresi. |
-Z, --uncompress-noreport | Memeriksa file terkompresi dan hanya menampilkan jenis file tanpa kompresi. |
-0, --print0 | Menampilkan karakter null setelah akhir nama file. |
--help | Menampilkan pesan bantuan. |
Contoh Perintah File
Di bawah ini adalah contoh kasus penggunaan umum untuk file
perintah.
Uji Banyak File
Untuk menguji beberapa file secara bersamaan, tambahkan nama file di akhir file
perintah:
file [file name 1] [file name 2] … [file name n]
Misalnya, menguji direktori, file teks, gambar, dan halaman web:
file Example example.txt sample.png index.html
Menguji Semua File dalam Direktori
Tambahkan karakter pengganti (*
) ke file
perintah untuk menguji semua file dan direktori di direktori kerja saat ini:
file *
Tambahkan jalur ke direktori ke karakter wildcard untuk menguji konten direktori itu:
file [path to directory]/*
Misalnya, untuk menguji isi Contoh direktori, gunakan:
file Example/*
Uji File dalam Rentang
file
perintah memungkinkan Anda menguji subset file dalam direktori menggunakan rentang gaya Regex. Pilih rentang dengan menempatkan nilai dalam tanda kurung. Misalnya, menguji file dan direktori dengan nama dalam rentang a-l:
file [a-l]*
Karena rentang gaya Regex peka terhadap huruf besar-kecil, output dalam contoh di atas hanya menampilkan jenis file untuk file yang dimulai dengan huruf kecil a-l. Menambahkan rentang lain memungkinkan Anda memasukkan karakter huruf besar juga:
file [a-l]* [A-L]*
Uji File dari Daftar
file
perintah memungkinkan Anda menggunakan file teks sebagai daftar file untuk diuji. File teks hanya boleh berisi satu nama file per baris.
Gunakan -f
opsi dan tambahkan jalur ke file daftar ke file
perintah:
file -f list.txt
Uji File Khusus
file
perintah tidak selalu dapat membaca file khusus, seperti file sistem:
file /dev/sda5
Pada contoh di atas, output perintah file menunjukkan bahwa /dev/sda5 adalah file khusus blok tetapi tidak menawarkan detail tambahan. Menggunakan -s
opsi memungkinkan Anda sepenuhnya menguji file khusus:
sudo file -s /dev/sda5
Uji File Terkompresi
Gunakan -z
opsi untuk menguji file terkompresi sepenuhnya, mencoba mendeteksi kontennya:
file -z install.tar.gz
Uji Versi File yang Diurai
Menggunakan -c
opsi menampilkan cetakan cek untuk versi file yang diurai:
file -c example.txt
Opsi ini biasanya digunakan dengan -m
opsi untuk men-debug dan menginstal file ajaib baru.
Tampilkan Output Singkat
Menggunakan -b
opsi menampilkan versi singkat dari output. Versi keluaran ini hanya menampilkan jenis file dan menghilangkan nama file.
file -b Example example.txt sample.png index.html
Tambahkan Pemisah ke Output
Menggunakan -F
opsi memungkinkan Anda menentukan karakter yang bertindak sebagai pemisah antara nama file dan bagian tipe file dari output. Misalnya, tambahkan tanda plus (+
) sebagai pemisah dengan:
file -F + Example example.txt sample.png index.html
Hapus Padding Nama File dari Output
Gunakan -N
opsi untuk menghapus padding antara nama file dan bagian tipe file dari output:
file -N Example example.txt sample.png index.html
Keluaran yang dihasilkan tidak lagi disejajarkan secara vertikal: