Linuxシステムで特定のファイルの作成日を知りたいです。変更またはアクセスされた日付ではなく、生成された日付。
私は努力しましたが、ls -ltrh
私stat filename
に必要なものを提供できませんでした。この情報を入手するにはどうすればよいですか?
ベストアンサー1
stat -c '%w' file
作成時間が保存されるファイルシステムで。
Linuxでは、次のものが必要です。coreutils
8.31、2.28 glibc
、およびカーネルバージョン4.11以降。
POSIX 標準は以下を定義します。3つの異なるタイムスタンプ各ファイルで保存:最後のデータアクセス時間、最後のデータ変更時間、最後のファイルステータス変更時間。
ext4、Btrfs、XFSなどの最新のLinuxファイルシステム(v5以上)とJFS、保存ファイルの作成時間(生年月日とも呼ばれます)関連フィールドには別の名前を使用します(crtime
ext4 / XFS、otime
Btrfs、およびJFS)。 Linuxが提供する統計(2)カーネルバージョン4.11以降、それをサポートするファイルシステムのファイル生成時間を取得するためのシステムコールインタフェースです。 (したがって、ファイルシステムに作成時にサポートが追加されても、一部のデプロイされたカーネルは、そのファイルシステムバージョンの名目上のサポートが追加されても、デフォルトではサポートされません。たとえば、XFS v5.)
〜のようにクレイグ・サンダースそしてモーセンパルワンザデバージョン 8.31 以前は、ファイル作成時間 (それぞれが人間が読める形式とエポックの後の秒) を表示するために、および形式指定子がstat
実際にサポートされていることを指摘していました。ただし、生年月日を照会できるシステムコールは8.31バージョンから可能である。バージョン8.31より前は、システムコールから返された構造体の合計フィールドから出生時刻を取得したgnulib(in)を介して出生時刻にアクセスしていました。たとえば、BSDシステム(および拡張OS X)はviaを提供しますが、Linuxではそうではありません。これが、Linux 8.31より前に生成時間を内部的に保存するファイルシステムの場合でも、出力(不明な生成時間を示す)がある理由です。%w
%W
coreutils
coreutils
stat
statx()
coreutils
stat
get_stat_birthtime()
lib/stat-time.h
st_birthtime
st_birthtimensec
stat
stat()
st_birthtime
stat
stat -c '%w' file
-
coreutils
〜のようにスティーブン・チャジェラスは次のように指摘しています。、一部のファイルシステム(ntfs-3gなど)は、拡張ファイル属性を介してファイル作成時間を公開します。