ファイルシステムタイムスタンプ精度の決定

ファイルシステムタイムスタンプ精度の決定

ファイルタイムスタンプの精度は、EXT3の場合は1秒、UFSの場合は1マイクロ秒、EXT4の場合は1ナノ秒に制限されます(少なくとも経験上)。ファイルシステム情報のみに基づいてこれを確認する方法はありますか?

私が考えることができる代替案は、すべてのユニットテストを数秒に制限するか(今私がやっていること)、複数のtouchファイルを制限しますstat -c %x

ベストアンサー1

私が知る限り、この情報はどこにも保存されません。ファイルシステムにエンコードされます。ただし、ファイルシステムのリストとその精度を手動で作成できます。私はcaseステートメントを使用してファイルシステムのリストに対してファイルシステムIDをテストします。精度が1秒未満の例がほとんどないので、デフォルト値を1に設定するだけです。

オンラインで読むと、以前のバージョンのFATと現在のバージョンのzipは2秒のタイムスタンプ精度を使用します。しかし、事実を確認することをお勧めします。

次のコマンドを使用して、ファイルのファイルシステムIDを取得できます。

stat -f --format="%t" $file

おすすめ記事