私はubuntuを使用していますが、ファイルが変更またはアクセスされた場合でも、ファイルの作成時間を知りたいですか?
この小さなスクリプトは、ext4の作成日を取得できます。
#!/bin/sh
fn=`realpath $1`
echo -n "Querying creation time of $1..."
Sudo debugfs -R "stat $fn" /dev/sda4|grep crtime
fcrtime
という名前を付けて、~/bin
フォルダーに入れました。したがって、どのフォルダでも、次のようなコマンドを使用できます:fcrtime example.odp
出力例:
crtime: 0x5163e3f0:12d6c108 -- Tue Apr 9 12:48:32 2013
同じファイルの統計と比較して:
File: `example.odp'
Size: 54962 Blocks: 112 IO Block: 4096 regular file
Device: 804h/2052d Inode: 11019246 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1000/ fulop) Gid: ( 1000/ fulop)
Access: 2013-04-09 13:20:05.263016001 +0300
Modify: 2013-04-09 13:20:05.227016001 +0300
Change: 2013-04-09 13:20:05.227016001 +0300
Birth: -
[〜#〜] notes [〜#〜]
realpath
は通常、デフォルトではインストールされません。 Ubuntuでは例えば。 Sudo apt-get install realpath
でインストールします/dev/sda4
をmount|grep ext4
から取得したものに置き換えます作成時間は、ファイル誕生時間と呼ばれ、一部のファイルシステムでサポートされ、一部のカーネルのみ。コマンドは Mohsen Pahlevanzadeh 回答:
stat --printf='%w' yourfile #human readable
stat --printf='%W' yourfile #seconds from Epoch , 0 if unknown
注:この質問は ファイルの作成日を見つける方法 の複製です。また、この質問を必ず読んでください Linux上のどのファイルシステムが作成時間を保存しますか? 。
http://en.wikipedia.org/wiki/Comparison_of_file_systems によると、これはext4、btfrs、FAT、NTFS、UDFファイルシステムに加えて、遭遇する可能性が低い他のいくつかのファイルシステムで利用できます。おそらくUbuntuで最も一般的なファイルシステム形式であるext2またはext3では使用できません。
ただし、カーネルパッチが必要です: http://lwn.net/Articles/394391/ 。どうやらこれは、誰かがそれを「otime」と呼び、他の誰かがそれを「btime」と呼んだという理由で、Linusが作成時間属性を拒否したためです。したがって、このアイデアは役に立たないに違いありません。