Ekstensi file tidak diperlukan pada unices, masih setiap file tar, gzip, atau bzip yang saya temui memiliki ekstensi file seperti .tar
, .tar.gz
atau .tgz
.
Apakah ada alasan khusus untuk itu atau itu hanya konvensi?
Awalnya, pada sistem unix, ekstensi pada nama file adalah masalah konvensi. Mereka mengizinkan manusia untuk memilih program yang tepat untuk membuka file. Konvensi modern adalah menggunakan ekstensi dalam banyak kasus; pengecualian umum adalah:
README
, TODO
. Kadang-kadang ada bagian tambahan yang menunjukkan subkategori, misalnya INSTALL.linux
, INSTALL.solaris
..bashrc
, .profile
, .emacs
.Makefile
.(Ini adalah kasus umum, bukan aturan yang sulit dan cepat.)
Sebagian besar format file biner juga mengandung beberapa jenis header yang menggambarkan properti file, dan biasanya memungkinkan format file diidentifikasi melalui angka ajaib . The file
perintah melihat informasi ini dan menunjukkan Anda tebakannya.
Terkadang ekstensi file memberikan lebih banyak informasi daripada format file, terkadang sebaliknya. Misalnya banyak format file terdiri dari arsip zip : Java libraries ( .jar
), dokumen OpenOffice ( .odt
, ...), dokumen Microsoft Office ( .docx
, ...), dll. Contoh lainnya adalah file kode sumber, di mana ekstensi menunjukkan bahasa pemrograman, yang dapat sulit bagi komputer untuk menebak secara otomatis dari isi file. Sebaliknya, beberapa ekstensi sangat ambigu, misalnya .o
digunakan untuk file kode yang dikompilasi (file objek ), tetapi pemeriksaan konten file biasanya dengan mudah mengungkapkan jenis mesin dan sistem operasi untuk file objek tersebut.
Keuntungan dari ekstensi adalah jauh lebih cepat mengenalinya daripada membuka file dan mencari urutan ajaib. Misalnya penyelesaian nama file dalam shell hampir selalu didasarkan pada nama (terutama ekstensi), karena membaca setiap file dalam direktori besar dapat memakan waktu lama sedangkan hanya membaca nama file cukup cepat untuk Tabpers.
Kadang-kadang mengubah ekstensi file dapat memungkinkan Anda untuk mengatakan bagaimana file ditafsirkan, ketika dua format file hampir, tetapi tidak sepenuhnya identik. Misalnya server web mungkin memperlakukan .shtml
dan .html
berbeda, yang pertama menjalani beberapa preprocessing sisi-server , yang terakhir dilayani apa adanya.
Dalam hal arsip gzip, gzip
tidak akan mengkompres ulang file yang namanya berakhir .gz
, .tgz
dan beberapa ekstensi lainnya. Dengan begitu Anda dapat menjalankan gzip *
untuk mengompres setiap file dalam direktori, dan file yang dikompresi tidak dimodifikasi.
Mereka mungkin tidak memerlukan ekstensi, tapi itu pasti membuat mereka lebih mudah diidentifikasi dalam output
ls
.sumber
tar
, jadi Anda harus memberi tahu jenis arsip yang Anda punya.Ekstensi file terutama merupakan konvensi untuk manusia yang menggunakan sistem. Ada alat yang menggunakan ekstensi nama file untuk melakukan sesuatu. Misalnya Nautilus menunjukkan kepada saya ikon berbeda berdasarkan ekstensi file.
Jika saya memberi Anda sebuah file bernama
file
, Anda mungkin tidak tahu cara membuka file ini. Namun, jika saya memberi Anda file bernamafile.tar.gz
ataufile.tar
Anda bisa dengan cepat dan mudah mengetahuinya.sumber