
アーカイブ内のファイルが最後にアクセスされた日時を知らせるレポートを生成したいと考えています。アクセスされていないファイルを低コストで低速のストレージ デバイスに移動できるかどうかを判断しようとしています。
これらは、NAS を搭載したサーバーの組み合わせです (すべて NTFS 形式)。私は、最終アクセスの日付をテキスト ファイルに出力する「tree」コマンドのようなものを考えています。
私はどちらかというと *nix 派なので、Windows でこのようなことをどうやって行うのかよくわかりません。
答え1
PowerShell を使用すると、c:\temp フォルダー内の最終アクセス時刻が 2 か月を超えるすべてのファイルが表示されます。結果は c:\files.log ファイルに書き込まれます。
foreach ($i in get-childitem c:\temp -recurse) {if ($i.lastaccesstime -lt ($(Get-Date).AddMonths(-2))) {write-output $i.fullname,';'$i.lastaccesstime | out-file -filepath "c:\files.log" -append}}
一行にまとめました!