具体的に画像ファイルが保存されたディレクトリか確認したい。
画像ファイルの拡張子は複数対応させたいのでGet-ChildItem
のFilte
オプションでは都合が悪い。
(Get-ChildItem -Path "確認するディレクトリのパス" -File | Where-Object { $_.Extension.ToUpper() -In (".PNG", ".JPG", ".JPEG", ".BMP") }).Length -gt 0
まずGet-ChildItem
のFile
オプションでファイルを絞り込みWhere-Object
で拡張子を絞りこむ。拡張子はExtensionプロパティで取得できますが、大文字小文字が混在すると条件式が面倒になるので、ToUpper()
メソッドで全て大文字にしています。次にIn
で配列に含まれる拡張子のみを絞り込む。そして、絞り込まれた要素数をLengthが0より大きいか比較している。
他の拡張子も条件に含める場合In
で配列の要素を増やすことで対応できる。
もっと複雑な条件を書きたい場合はIn
の代わりに正規表現を用いる方法を検討したい。
コメント