MiracleJobLogo
エンジニアのエンジニアによるエンジニアのためのサイト
News 12/20 おすすめ情報に 『 WOMAN'S VALUE AWARD【ICT部門 優秀賞】 』 を追加しました。
会員登録するとキャリア診断やサイトに参加することができます。
あなたにおすすめな技術情報、資格、仕事などをお知らせします。

無料会員登録


パスワードを忘れた場合
LINEで送る
MiracleJobBanaLeft1
MiracleJobBanaLeft2


【PowerShell】ファイルのLengthプロパティ
profile-img
投稿者: muto-sanさん
投稿日:2019/10/01 16:00
更新日:2019/10/01 17:22
like-img
分類
技術
テクノロジー
Windows系サーバ
キャリア
運用・保守 / テクニカルサポート / 構築
投稿内容
Get-ChildItemでファイル情報を取得する場合、ファイルサイズは[Length]プロパティで表現される。
しかし、配列の長さでも同じ名前の[Length]プロパティを使用するので、例えば以下のようなことが起こる。

・フォルダーはLengthプロパティを持たないが、表示のさせ方によって1(要素数1の配列のLengthプロパティ)になるケースがある


・フォルダーの表示上のLengthが0だからと言って、ファイル/フォルダーが混在するディレクトリでLength1以上のアイテムを取得しようとWhere-Objectを使うとこんな感じになる。



・Get-ChildItemの結果のLengthを取得した場合は、ファイルのLengthプロパティは使われず要素数(ファイル・フォルダーの数)が取得できる。


・インデックス番号を使用したりして単一のファイルを指定してやればLengthはファイルサイズとして表示される。



基本的にこの仕様が原因で事故ることは無いだろうが、Lengthプロパティを使ってファイル操作をするときはちょっとだけ意識する必要があるかも。

コメント


MiracleJobBanaRight1
MiracleJobBanaRight2
MiracleJobBanaRight3