日々の作業で「このフォルダにあるファイルを、更新日時の新しい順に並べて確認したい」と思ったことはありませんか?
エクスプローラーを使えばもちろん確認できますが、PowerShellを使えば、より高速で正確、しかも応用が効く一覧表示が可能です。
この記事では、PowerShellで特定のフォルダ内のファイルを取得し、更新日時の降順で一覧表示するスクリプトを丁寧に解説します。
なぜPowerShellでファイル一覧を出すのか?
PowerShellはWindowsに標準搭載されている強力な自動化ツールです。GUI操作では時間がかかるような作業も、PowerShellを使えば一瞬で処理できます。
たとえば、こんな場面で便利です
- 毎日更新されるレポートファイルの確認
- 最終更新されたファイルを即座に見つけたい
- ファイルの一覧をCSVで保存したい
- 古いファイルを自動削除したい(応用)
今回はその第一歩として、更新日順に並んだファイル一覧を表示するスクリプトを紹介します。
スクリプト全文:更新日順にファイルを一覧表示する
以下のスクリプトは、指定したフォルダ内のファイルを取得し、更新日(LastWriteTime)の降順に並べて表示します。
# 対象のフォルダパスを指定
$folderPath = "C:\Users\YourName\Documents"
# ファイル情報を取得し、更新日時の降順でソート
Get-ChildItem -Path $folderPath -File |
Sort-Object LastWriteTime -Descending |
Select-Object Name, LastWriteTime
スクリプトのポイント
Get-ChildItem:指定フォルダ内のファイル一覧を取得します。
-File:ファイルだけを対象にし、フォルダは除外します。
Sort-Object LastWriteTime -Descending:更新日時の降順で並び替えます。
Select-Object:表示する情報(ここではファイル名と更新日時)を絞ります。
実行結果の例
Name LastWriteTime
---- --------------
report_2024_12.xlsx 2025/07/06 18:45
meeting_notes.txt 2025/07/05 09:12
todo_list.md 2025/07/03 14:33
このように、最近変更されたファイルが上から順に表示されるため、「どれが最新か」がひと目でわかります。
よくあるカスタマイズ例
1. サブフォルダも含めたい場合
# 対象のフォルダパスを指定
$folderPath = "C:\Users\YourName\Documents"
Get-ChildItem -Path $folderPath -File -Recurse |
Sort-Object LastWriteTime -Descending |
Select-Object FullName, LastWriteTime
-Recurseを使えば、サブフォルダ内のファイルも含まれます。
FullNameでファイルのフルパスを表示できます。
2. 結果をCSVに保存したい場合
# 対象のフォルダパスを指定
$folderPath = "C:\Users\YourName\Documents"
Get-ChildItem -Path $folderPath -File |
Sort-Object LastWriteTime -Descending |
Select-Object Name, LastWriteTime |
Export-Csv -Path "$folderPath\file_list.csv" -NoTypeInformation -Encoding UTF8
結果をCSVに保存すれば、Excelで開いて管理できます。定期レポートや共有にも便利です。
応用例:最新ファイル1件だけ取得する
更新されたファイルの中で最新の1件だけを取得したい場合は、Select-Object -First 1を使います。
# 対象のフォルダパスを指定
$folderPath = "C:\Users\YourName\Documents"
Get-ChildItem -Path $folderPath -File |
Sort-Object LastWriteTime -Descending |
Select-Object -First 1 Name, LastWriteTime
このコードは「最新ファイルの特定」に非常に役立ちます。自動化スクリプトの中でよく使われるテクニックです。
まとめ
PowerShellを使えば、フォルダ内のファイルを素早く、的確に、柔軟に一覧表示できます。今回は更新日時順に並べる方法をご紹介しました。