[Powershell] Windowsで更新日時が〇〇以降のファイルのパスの一覧を取得するには
概要
この記事について
普段と別のPC(Windows)での作業をする機会があった。
作業後にもとのPCに持っていく必要のある、差分あり(作業による変更あり)のファイルを選別する必要があり、
作業フォルダにおいて、更新日時が本日の9:00以降であるファイルを絞りこむコマンドが欲しかった。
Git等のバージョン管理アプリがインストールされているPCならば、
変更内容を適宜コミットしておけばアプリが自動的にうまい具合にやってくれるので、
このようなコマンドは必要ないのだけれど。
使用環境
PSVersion 5.1
コマンド
コンソールに出力
1ls -r -File | ?{$_.LastWriteTime -gt [Datetime]"2020/10/27 9:00:00"} | select FullName
ファイルに出力して見やすくする
1ls -r -File | ?{$_.LastWriteTime -gt [Datetime]"2020/10/27 9:00:00"} | select FullName | ft -A > "C:\temp\output.txt"
エイリアス無しコマンドVer
1Get-ChildItem -Recurse -File | Where-Object{$_.LastWriteTime -gt [Datetime]"2020/10/27 18:00:00"} | Select-Object FullName | Format-Table -AutoSize > "C:\temp\output.txt"
- Get-ChildItem -Recurse -File <- 再帰的にファイルのみの情報一覧を取得
- $_.LastWriteTime -gt [Datetime]"2020/10/27 18:00:00" <- 日付文字列をDatetime型にキャストしてファイル情報と比較