GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara mendapatkan tanggal/waktu pembuatan file di Bash/Debian?

Sayangnya, pencarian Anda tidak dapat dilakukan secara umum, karena hanya ada 3 nilai waktu berbeda yang disimpan untuk setiap file Anda seperti yang ditentukan oleh standar POSIX (lihat bagian Definisi Dasar 4.8 Pembaruan Waktu File)

Setiap file memiliki tiga stempel waktu terkait yang berbeda:waktu akses data terakhir, waktu modifikasi data terakhir, dan waktu status file terakhir diubah. Nilai ini dikembalikan dalam struktur karakteristik file stat struct , seperti yang dijelaskan di .

EDIT:Seperti disebutkan dalam komentar di bawah, tergantung pada sistem file yang digunakan, metadata mungkin berisi tanggal pembuatan file. Namun perhatikan penyimpanan informasi seperti itu tidak standar. Bergantung padanya dapat menyebabkan masalah portabilitas pindah ke sistem file lain, seandainya yang benar-benar digunakan entah bagaimana menyimpannya.


jawaban mikyra bagus. Faktanya seperti yang dia katakan.

[[email protected] test]$ stat test.txt
  File: `test.txt'
  Size: 0               Blocks: 8          IO Block: 4096   regular empty file
Device: 802h/2050d      Inode: 588720      Links: 1
Access: (0664/-rw-rw-r--)  Uid: (  500/   jason)   Gid: (  500/   jason)
Access: 2013-03-14 01:58:12.000000000 -0700
Modify: 2013-03-14 01:58:12.000000000 -0700
Change: 2013-03-14 01:58:12.000000000 -0700

jika Anda ingin memverifikasi file mana yang dibuat terlebih dahulu, Anda dapat menyusun nama file Anda dengan menambahkan tanggal sistem saat Anda membuat serangkaian file.


Perhatikan bahwa jika Anda memasang sistem file Anda dengan noatime karena alasan kinerja, maka atime kemungkinan akan menunjukkan waktu pembuatan. Mengingat bahwa tidak ada waktu yang menghasilkan peningkatan kinerja besar-besaran (dengan menghapus penulisan disk setiap kali file dibaca), ini mungkin merupakan opsi konfigurasi yang masuk akal yang juga memberikan hasil yang Anda inginkan.


ls -i file #output is for me 68551981
debugfs -R 'stat <68551981>' /dev/sda3 # /dev/sda3 is the disk on which the file exists

#results - crtime value
[[email protected] ~]# debugfs -R 'stat <68551981>' /dev/sda3
debugfs 1.41.12 (17-May-2010)
Inode: 68551981   Type: regular    Mode:  0644   Flags: 0x80000
Generation: 769802755    Version: 0x00000000:00000001
User:     0   Group:     0   Size: 38973440
File ACL: 0    Directory ACL: 0
Links: 1   Blockcount: 76128
Fragment:  Address: 0    Number: 0    Size: 0
 ctime: 0x526931d7:1697cce0 -- Thu Oct 24 16:42:31 2013
 atime: 0x52691f4d:7694eda4 -- Thu Oct 24 15:23:25 2013
 mtime: 0x526931d7:1697cce0 -- Thu Oct 24 16:42:31 2013
**crtime: 0x52691f4d:7694eda4 -- Thu Oct 24 15:23:25 2013**
Size of extra inode fields: 28
EXTENTS:
(0-511): 352633728-352634239, (512-1023): 352634368-352634879, (1024-2047): 288392192-288393215, (2048-4095): 355803136-355805183, (4096-6143): 357941248-357943295, (6144
-9514): 357961728-357965098

Linux
  1. Bagaimana Melakukan A Ls Dan Kemudian Mengurutkan Hasil Berdasarkan Tanggal Dibuat?

  2. Linux – Bagaimana Menemukan Tanggal Pembuatan File?

  3. Dapatkan Usia File yang Diberikan?

  1. Dapatkan File Dibuat/Waktu pembuatan??

  2. Ubah tanggal pembuatan file

  3. Dapatkan waktu pembuatan file dengan Python di linux

  1. Linux – Bagaimana Cara Mendapatkan Tanggal Pembuatan File Pada Volume Logika Ntfs?

  2. Dapatkan mtime file tertentu menggunakan Bash?

  3. Cara mendapatkan waktu tanggal yang diformat dengan python