Di Mac OS X tampaknya ada empat cap waktu berbeda yang dikaitkan dengan file. Cap waktu ini tidak selalu diupdate secara independen satu sama lain, tapi satu dapat memiliki kontrol individu dengan sedikit perawatan dan dengan penggunaan touch
, SetFile
dan chown
(atau chmod
). Untuk melihat ini, mari kita bereksperimen dan membuat file baru dari command prompt #
:
# touch a.txt
# stat a.txt
16777218 5969798 -rw-r--r-- 1 username staff 0 0 "May 19 00:11:14 2015" "May 19 00:11:14 2015" "May 19 00:11:14 2015" "May 19 00:11:14 2015" 4096 0 0 a.txt
Tanggal pertama yang tercantum adalah waktu akses terakhir ( atime
), yang kedua adalah waktu modifikasi terakhir ( mtime
), yang ketiga adalah perubahan status terakhir ( ctime
), yang keempat adalah waktu pembuatan file (kelahiran, Btime
), lihat man lstat
.
Untuk mengubah waktu akses ( atime
) ke penggunaan waktu tertentu:
# touch -a -t201412312359.59 a.txt
# stat a.txt
16777218 5969798 -rw-r--r-- 1 username staff 0 0 "Dec 31 23:59:59 2014" "May 19 00:11:14 2015" "May 19 00:11:46 2015" "May 19 00:11:14 2015" 4096 0 0 a.txt
Untuk memodifikasi waktu modifikasi ( mtime
) dan waktu pembuatan file ( Btime
) ke waktu yang ditentukan, gunakan:
# touch -m -t201312312359.59 a.txt
# stat a.txt
16777218 5969798 -rw-r--r-- 1 username staff 0 0 "Dec 31 23:59:59 2014" "Dec 31 23:59:59 2013" "May 19 00:12:19 2015" "Dec 31 23:59:59 2013" 4096 0 0 a.txt
Tampaknya ini juga secara otomatis memperbarui waktu perubahan status terakhir ( ctime
) ke waktu sistem saat ini!
Untuk memodifikasi hanya waktu pembuatan / kelahiran ( Btime
) ke waktu tertentu, gunakan (seperti yang diusulkan oleh orang lain di atas):
# SetFile -d "12/31/1999 23:59:59" a.txt
# stat a.txt
16777218 5969798 -rw-r--r-- 1 username staff 0 0 "Dec 31 23:59:59 2014" "Dec 31 23:59:59 2013" "May 19 00:12:19 2015" "Dec 31 23:59:59 1999" 4096 0 0 a.txt
Untuk mengubah hanya waktu perubahan status terakhir ( ctime
) ke waktu sistem saat ini gunakan misalnya:
# chown username a.txt
# stat a.txt
16777218 5969798 -rw-r--r-- 1 username staff 0 0 "Dec 31 23:59:59 2014" "Dec 31 23:59:59 2013" "May 19 00:13:45 2015" "Dec 31 23:59:59 1999" 4096 0 0 a.txt
di mana username
pemilik file (seperti yang dilaporkan oleh stat
atau ls -l
). Ini tidak mengubah kepemilikan file, tetapi mengakses inode file dan mencatat ini sebagai waktu perubahan status terakhir. Sayangnya, tidak mungkin menentukan waktu secara eksplisit di sini selain dengan mengubah waktu komputer ...
Singkatnya, untuk dapat mengubah empat stempel waktu secara independen, seseorang dapat menggunakan (dalam urutan ini untuk 3 terakhir):
touch -a -tCCYYMMDDHH.SS <file>
touch -m -tCCYYMMDDHH.SS <file>
SetFile -d "MM/DD/CCYY HH:MM:SS" <file>
- [atur tanggal sistem]
chown username <file>
[kembalikan ke tanggal sistem normal]
(Tentu saja, mengatur ulang tanggal sistem mungkin bukan operasi bebas risiko, Anda telah diperingatkan.)