アニメ「学園ベビーシッターズ」 ティザーPV
アニメ『学園ベビーシッターズ』
ベビーシッターの話で、面白いんだろうと思ってたんですが、意外に子供たちに癒されます。特に虎太郎にはキュンとされっぱなしです。
今回は、PowerShellでGet-Propertyを使います。
実験用ディレクトリとファイル構成はこのようになっています。
C:\Users\takk\tmp>powershell Windows PowerShell Copyright (C) 2014 Microsoft Corporation. All rights reserved. PS C:\Users\takk\tmp> gci -r -n dir1 dir1\111 dir1\aaa dir1\file.txt dir1\111\222 dir1\111\file.txt dir1\111\222\333 dir1\111\222\file.txt dir1\111\222\333\444 dir1\111\222\333\file.txt dir1\111\222\333\444\file.txt dir1\aaa\bbb dir1\aaa\file.txt dir1\aaa\bbb\ccc dir1\aaa\bbb\file.txt dir1\aaa\bbb\ccc\ddd dir1\aaa\bbb\ccc\file.txt dir1\aaa\bbb\ccc\ddd\file.txt PS C:\Users\takk\tmp>
gci -r -n (Get-ChildItem -Recurse -Name)で表示されるパスは、カレントフォルダからのパスとなってます。
Get-ItemPropertyのFullNameで絶対パスを取得できます。
PS C:\Users\takk\tmp> (get-itemproperty (gci -r -n)).fullname C:\Users\takk\tmp\dir1 C:\Users\takk\tmp\dir1\111 C:\Users\takk\tmp\dir1\aaa C:\Users\takk\tmp\dir1\file.txt C:\Users\takk\tmp\dir1\111\222 C:\Users\takk\tmp\dir1\111\file.txt C:\Users\takk\tmp\dir1\111\222\333 C:\Users\takk\tmp\dir1\111\222\file.txt C:\Users\takk\tmp\dir1\111\222\333\444 C:\Users\takk\tmp\dir1\111\222\333\file.txt C:\Users\takk\tmp\dir1\111\222\333\444\file.txt C:\Users\takk\tmp\dir1\aaa\bbb C:\Users\takk\tmp\dir1\aaa\file.txt C:\Users\takk\tmp\dir1\aaa\bbb\ccc C:\Users\takk\tmp\dir1\aaa\bbb\file.txt C:\Users\takk\tmp\dir1\aaa\bbb\ccc\ddd C:\Users\takk\tmp\dir1\aaa\bbb\ccc\file.txt C:\Users\takk\tmp\dir1\aaa\bbb\ccc\ddd\file.txt PS C:\Users\takk\tmp>
まあフルパスの一覧なら、dir/b/sの方が早いです。
更新日時を取得するには、LastWriteTimeを使います。
PS C:\Users\takk\tmp>gci -r -n -af | %{ Write-Host $_ (gp $_).LastWriteTime} dir1\file.txt 2018/03/04 23:10:13 dir1\111\file.txt 2018/02/28 23:12:11 dir1\111\222\file.txt 2018/02/28 23:12:11 dir1\111\222\333\file.txt 2018/02/28 23:12:11 dir1\111\222\333\444\file.txt 2018/02/28 23:12:11 dir1\aaa\file.txt 2018/02/28 23:12:11 dir1\aaa\bbb\file.txt 2018/02/28 23:12:11 dir1\aaa\bbb\ccc\file.txt 2018/02/28 23:12:11 dir1\aaa\bbb\ccc\ddd\file.txt 2018/02/28 23:12:11 PS C:\Users\takk\tmp>
日付の一致判定は一旦文字列に変換してから文字列の比較で行います。
PS C:\Users\takk\tmp>gci -r -n -af | %{ Write-Host $_ ((gp $_).LastWriteTime.ToString('yyyyMMdd') -eq '20180304')} dir1\file.txt True dir1\111\file.txt False dir1\111\222\file.txt False dir1\111\222\333\file.txt False dir1\111\222\333\444\file.txt False dir1\aaa\file.txt False dir1\aaa\bbb\file.txt False dir1\aaa\bbb\ccc\file.txt False dir1\aaa\bbb\ccc\ddd\file.txt False PS C:\Users\takk\tmp>
コメント