プログラミング

【Powershell】フォルダの中にあるファイル数をカウントする

※はてブより引っ越しました。

このフォルダに何件ファイルがあるか知りたいときってありますよね。

そこで今回はファイル名をカウントするやり方を調べてみました!

前回ご紹介したファイル名を一括でリネームするやり方と組み合わせて使うこともできます。
リネームするやり方はこちら⇒【Powershell】ファイルの中身を一括でリネーム

指定したファイル名のファイル数をカウントする

特定のファイル名をカウントするやりかたです。

#ファイルに含まれている文字列
$target = "探す文字列"

$targetPath = "フォルダまでのパス"

$filecount = dir $targetPath | ? {$_.Name -like "$target*"}.count

カウントしたいファイルがあるフォルダの一覧を表示して$targetの数をカウント。
"?" は where のエイリアスで、パイプで渡すときに条件をつけています。

ファイルが1件だけだと正しくカウントされない

残念なことに上記のやり方だとカウントしたいファイルが1件だった場合に正しくカウントされません。
処理結果として”null”が返ってきてしまいます。

そこで以下のように

#ファイルに含まれている文字列
$target = "探す文字列"

$targetPath = "フォルダまでのパス"

$filecount = @(dir $targetPath | ? {$_.Name -like "$target*"}).count

カウントの前に”@”をつけてやります。
そうすると結果が1件として正しくかえってきます。

どうもcountした結果が1件だった場合、配列としてではなく単一のオブジェクトとして認識されるため"1"がかえってこないよう。
そこで@をつけて配列であることを強調します。

powershell v3.0からは@をつけなくても正しくcountの結果がかえってくるようですよ!

まとめ

コマンドプロンプトでもいいんですがせっかくなのでpowershellで組んでみました。

ファイル名が1件の場合は工夫が必要なので注意しましょう!

RECOMMEND

1

新卒で入社したけど『もう仕事を辞めたい』『我慢できない』という方に向けて。新卒入社でカフェのフロアスタッフとしてして働いたけれど、約1年で退職した私からアドバイスです。心がだめになるまで続ける必要なんてありません。

2

女性はライフステージによって休職や転職しなければいけないときがありますよね。
そこでこの記事では女性の転職に有利な資格をまとめてみました。
一生職に困らない、転職に有利な資格とはなにかご覧ください。

3

「今日は会社に行く気がしない・・。」「たまには会社をさぼりたい・・。」なんてことありませんか?本記事では、実際に私の周りで使われていた欠勤理由をご紹介します。今から使える欠勤理由です。本当に仕事に行きたくないときなど活用できると思うので、ぜひ読んでみてください。

-プログラミング

Copyright© Job search info , 2020 All Rights Reserved.