touch
membuat file kosong baru jika file itu tidak ada karena itu yang dirancang untuk dilakukan. Utilitas harus berisi kode untuk menangani kasus itu secara khusus. Utilitas muncul di Unix V7 ; -nya pengguna menggambarkannya demikian:
sentuh - tanggal pembaruan terakhir dimodifikasi dari suatu file
touch
mencoba mengatur tanggal yang dimodifikasi dari setiap file . Ini dilakukan dengan membaca karakter dari file dan menuliskannya kembali. Jika file ** * tidak ada, upaya akan dilakukan untuk membuatnya kecuali -c
opsi tersebut ditentukan.
(Saya tidak tahu apa yang touch
terjadi jika file itu kosong. Panggilan sistem yang mendasarinya datang kemudian.)
Saya tidak tahu pasti mengapa touch
dirancang untuk membuat file itu ada, tetapi saya menduga itu karena make
. Mengapa Anda ingin mengatur waktu modifikasi file ke waktu saat ini? Ada kasus di mana itu bisa berguna untuk mengatur waktu modifikasi ke waktu tertentu, tetapi kemampuan itu datang kemudian, yang asli touch
hanya bisa mengatur waktu modifikasi ke waktu saat ini. Alasan untuk melakukan itu adalah untuk menjalankan kembali amake
aturan yang bergantung pada file.
Artinya, misalkan Anda memiliki file foo
, dan makefile yang menyatakan perintah untuk menghasilkan bar
dari foo
. Saat Anda mengetik make bar
, perintah dijalankan dan bar
dibuat. Jika bar
ada dan lebih baru daripada foo
, make bar
tidak melakukan apa-apa, karena make
menganggap bahwa bar
sudah dibuat. Namun, jika bar
lebih tua dari foo
, buat berpikir itubar
tidak mutakhir dan perlu diperbarui.
Tetapi bagaimana jika aturan untuk menghasilkan bar
telah berubah? Maka Anda memiliki dua opsi:
rm bar; make bar
touch foo; make bar
Anda harus foo
ada untuk menghasilkanbar
, jika tidak perintah biasanya tidak akan berfungsi.
Terminologi "sentuh" juga ada dalam make
utilitas: make -t bar
hanya akan berpura-pura menjalankan perintah, yaitu, itu akan mengatur waktu modifikasi bar
ke waktu saat ini tanpa benar-benar menjalankan perintah untuk menghasilkan bar
(Anda akan melakukan ini jika Anda berpikir bahwa perubahan yang foo
seharusnya tidak mempengaruhi bar
). The touch
utilitas karena itu versi standalone dari make -t
fitur.
touch /forcefsck
untuk membuat file kosong yang dipanggil/forcefsck
untuk memaksa sistem file untuk diperiksa kesalahan pada reboot berikutnya. File itu sendiri tidak perlu mengandung apa pun, hanya perlu ada. Tanpatouch
, saya harus menggunakanvi
ataunano
menyimpan file kosong. Jauh lebih cepat digunakantouch
.