PowerShell: ファイルの作成日時・更新日時・最終アクセス日時を取得

PowerShellでファイルの作成日時や最終更新日時、 最終アクセス日時を取得するにはGet-ChildItemコマンドレットを使います。

Get-ChildItemの引数にファイルを指定すると、 FileInfoオブジェクトを取得できます。
FileInfoオブジェクトは.NET Framework FileInfoクラスのオブジェクトであり、 ファイルの更新日時等の情報をプロパティとして保持しています。

ファイルの作成日時を知りたい場合はFileInfoオブジェクトのCreationTimeプロパティ、 最終更新日時はLastWriteTimeプロパティ、 最終アクセス日時はLastAccessTimeプロパティで取得できます。

プロパティ内容
CreationTime作成日時
LastWriteTime最終更新日時
LastAccessTime最終アクセス日時

次のサンプルコードでは、 カレントディレクトリに存在するファイル「test.txt」の 作成日時・最終更新日時・最終アクセス日時を表示しています。

$fobj = Get-ChildItem .\test.txt

# 作成日時
$fobj.CreationTime

# 最終更新日時
$fobj.LastWriteTime

# 最終アクセス日時
$fobj.LastAccessTime

# 実行結果
2022年2月2日 13:46:44
2022年2月3日 11:23:52
2022年2月3日 15:37:03

最終アクセス日時はあまり使用する機会が無いかもしれませんが、 例えば一定期間以上アクセスのないファイルを必要ないファイルとみなして、 削除するプログラムを作成する場合に使えます。

なお、上のコードで取得している日時はローカル時刻の日時です。 もし世界協定時刻 (UTC) での日時を知りたい場合は、 それぞれのプロパティの末尾にUtcを付けたプロパティが別途あります。

ローカル時刻世界協定時刻
CreationTimeCreationTimeUtc
LastWriteTimeLastWriteTimeUtc
LastAccessTimeLastAccessTimeUtc

参考サイト
FileInfo クラス (System.IO) | Microsoft Docs

PowerShell
PR