「stat」で、mtime Epochタイムスタンプをミリ秒単位で取得します。

「stat」で、mtime Epochタイムスタンプをミリ秒単位で取得します。

mtime を表示するために使用すると、statミリ秒単位で日付が取得されます。

$ stat -c '%y' test.log 
2019-07-04 14:32:10.730059167 +0200

ただし、エポックタイムスタンプを表示したい場合は、もうミリ秒を取得できません。

$ stat -c '%Y' test.log 
1562243530

何か抜けましたか?それとも、両方の出力を一緒にパッチする必要がありますか?

ベストアンサー1

GNU Coreutils 実装では、次のものを使用できます。

stat --format='%.9Y' file

そうでなければ

stat --format='%.Y' file

infoドキュメントから:

'%W'、 '%X'、 '%Y' および '%Z' の形式は、小数点の後に印刷する桁数を指定するためにピリオドの前の精度を受け入れます。たとえば、 "%.3X"はアクセスタイムスタンプをミリ秒単位で出力します。ピリオドが提供されているが精度がない場合、「stat」は9桁を使用するため、「%.X」は「%.9X」と同じです。超過精度が削除されると、タイムスタンプは負の無限大に切り捨てられます。

おすすめ記事