PowerShell でカウントするにはどうすればよいですか?
パワーシェル

PowerShell でカウントするにはどうすればよいですか?

By Hervé , on 5 7月 2024 , updated on 5 7月 2024 - 1 minute to read
Partager cet article :

PowerShell は、Windows システム上の多くのタスクを自動化するための強力で多用途のツールです。 PowerShell の使用方法を知ることは、ワークフローの最適化を目指すシステム管理者や開発者にとって不可欠なスキルです。この記事では、PowerShell を使用して効率的なカウント操作を実行するさまざまな方法を検討します。

PowerShell での会計の基本

PowerShell は、反復的なタスクを自動化したいシステム管理者や開発者にとって強力なツールです。共通のタスクは次のとおりです。 項目を数える コレクションの中で。 PowerShell では、コンテキストとデータ型に応じて、これを行うためのいくつかの方法が提供されています。

開始するには、 コマンドレット


測定対象

コレクション内のアイテムの数を数えます。例えば ​​:


$配列 = 1,2,3,4,5
$count = $array |測定対象
$count.カウント


上記のコードは、一連の整数を変数に格納します。


$配列

。コマンド


測定対象

次に、この配列内の要素の数をカウントするために使用されます。結果にはプロパティからアクセスできます


カウント

要素をカウントすることも可能 直接 メソッドを使用して


カウント

適切なコレクションについて。例えば ​​:


$array = @(1,2,3,4,5)
$count = $array.Count


多くの場合、この手法の方が高速かつ直接的です。

複雑なオブジェクトまたはコマンドの結果の場合、フィルター Where-オブジェクト 特定の条件を満たすアイテムをカウントできます。以下に例を示します。


$processes = 取得プロセス
$highMemoryProcesses = $プロセス | Where-オブジェクト { $_.WorkingSet -gt 100MB }
$highMemoryProcesses.Count


上記のコードは、実行中のすべてのプロセスを抽出し、メモリ消費量が 100MB を超えるプロセスをカウントします。

さらに正確な結果を得るには、複数のコマンドレットと関数を組み合わせることができます。要約すれば :

  • 測定対象

    一般的なアプローチの場合

  • 。カウント

    簡単な方法としては

  • Where-オブジェクト

    特定の条件に基づくカウントの場合

変数宣言

PowerShell では、コレクション内のアイテムの数を数えるのは一般的かつ重要なタスクです。コマンド 測定対象 これを達成するためによく使用されます。これにより、オブジェクトのプロパティを測定し、コレクションの要素をカウントすることができます。

使用方法は次のとおりです。

  • リスト内の要素の数を測定します。

“`パワーシェル
$list = @(1, 2, 3, 4, 5)
$アカウント = $リスト |測定対象
$count.カウント
「」

このコマンドは、リスト内の要素の数 (この場合は 5) を返します。

ディレクトリ内のファイルを数えるためにも使用できます。

このコマンドは、指定されたディレクトリ内のファイルの数をカウントします。

PowerShell でカウントするには、まず変数を宣言します。最も簡単な方法は、代入演算子を使用することです。 = :

この変数をコマンドで使用できます。 測定対象 要素の数を取得するには:

より複雑なカウントの場合は、ループと条件を組み込み関数と組み合わせて使用​​できます。特定の条件に従ってファイルをカウントする例を次に示します。

このコマンドは、指定されたディレクトリ内の .txt 拡張子を持つファイルのみをカウントします。

算術演算子の使用

PowerShell は、 強力なツール 自動化とシステム管理用。中心的な機能の 1 つは、 算術演算 シンプルかつ複雑。 PowerShell でのカウントの基本は、以下に基づいています。 変数 そして 算術演算子

PowerShell の変数は、次のシンボルを使用して作成されます。 $ 変数名が続きます。例えば ​​:


$number = 10

PowerShell の基本的な算術演算子には次のものがあります。 + (追加)、 (引き算)、 * (乗算)、および / (分割)。これらの演算子を使用して基本的な計算を行うことができます。

PowerShell で算術演算子を使用してカウント操作を実行する例を次に示します。


$a = 5
$b = 10

# 追加
$addition = $a + $b

# 減算
$減算 = $b - $a

# 乗算
$multiplication = $a * $b

# 分割
$division = $b / $a


このコードは 2 つを定義します 変数


$a

そして


$b

値はそれぞれ 5 と 10 です。次に、これらの変数に対して一連の算術演算を実行し、 結果 新しい変数に。

を表示するには、 結果 これらの操作のうち、次のコマンドを使用できます。


書き込み出力

:


書き込み出力「加算:$addition」
書き込み出力「減算: $subtraction」
書き込み出力「乗算: $multiplication」
書き込み出力「ディビジョン: $division」


それらと 基本、PowerShell を使用して、より複雑な会計タスクを実行できます。次のような制御構造 バックル そして 条件 スクリプトの必要に応じてデータセットを操作し、詳細な計算を実行できます。

PowerShell でカウントするためのさまざまな方法:

方法 説明
コンテンツの取得 テキストファイルの行数を数える
測定対象 コレクション内のオブジェクトの数を計算する
測定コマンド 注文の履行時間を測定する

PowerShell の高度なカウント手法

PowerShell output window showing count results.

のために カウント PowerShell の要素には、コンテキストや特定のニーズに応じて適応されるいくつかのメソッドがあります。基本的なテクニックの 1 つは、プロパティを使用することです。 カウント 絵画やコレクションに。

たとえば、単純な配列内の要素の数を取得するには、次のようにします。


$array = @(1, 2, 3, 4, 5)
$count = $array.Count
書き込み出力 $count


配列内の特定の値の出現をカウントすることもできます。このために、次のメソッドを使用できます Where-オブジェクト 物件と合わせて カウント :


$array = @(1, 2, 3, 4, 5, 3, 3)
$count = $array | Where-オブジェクト { $_ -eq 3 } |測定オブジェクト |オブジェクトの選択 -ExpandProperty 数
書き込み出力 $count


コマンドレットによって返されるオブジェクトなど、より複雑なコレクションの場合、PowerShell は次のような強力なツールを提供します。 測定対象。ディレクトリ内のファイルを数える方法は次のとおりです。


$files = Get-ChildItem -Path "C:UsersPublicDocuments"
$fileCount = $files |測定オブジェクト |オブジェクトの選択 -ExpandProperty 数
書き込み出力 $fileCount


さらに前進するには、以下を組み合わせることができます グループオブジェクト そして 測定対象 グループごとにカウントを実行します。以下は、ディレクトリ内のファイルの種類を数える例です。


$files = Get-ChildItem -Path "C:UsersPublicDocuments"
$groupedFiles = $files |グループオブジェクトの拡張
foreach ($groupedFiles の $group) {
    書き込み-出力 "拡張子: $($group.Name) - 数: $($group.Count)"
}


最後に、もう 1 つの便利な方法は、 オブジェクトの選択 財産と一緒に -個性的 一意のアイテムの数を取得するには:


$array = @(1, 2, 3, 3, 4, 5, 5)
$uniqueCount = ($array | Select-Object -Unique).Count
書き込み出力 $uniqueCount


これらのカウント手法を使用すると、PowerShell でデータのコレクションを効率的に分析および操作できます。

ループを使用してカウントする

PowerShell には、ファイル、プロセス、その他の種類のオブジェクトなど、項目をカウントするためのいくつかの方法が用意されています。これらのテクニックにより、スクリプトがより動的かつ効率的になります。

PowerShell のループは、オブジェクトのコレクションを反復処理し、カウント操作を実行するために不可欠です。ここではいくつかの例を示します :

ForEach-Object

コマンドレット


ForEach-Object

コレクション内の各アイテムを参照できます。オブジェクトをカウントするには、count 変数を使用します。



$カウンター = 0
Get-ChildItem -Path "C:Logs" | ForEach-Object {
    $カウンター++
}
書き込み出力 $counter


For ループ

ループ


のために

事前に反復回数がわかっている場合に便利です。



$files = Get-ChildItem -Path "C:Logs"
$count = $files.Count
for ($i = 0; $i -lt $count; $i++) {
    # ファイルを数える
}
書き込み出力 $count


While ループ

ループ


その間

終了条件が不明なプロセスに最適です。



$files = Get-ChildItem -Path "C:Logs"
$カウンター = 0
while ($counter -lt $files.Count) {
    $カウンター++
}
書き込み出力 $counter


PowerShell でループを使用すると、オブジェクトを正確かつ効率的に操作し、カウントできるようになります。さまざまなループを試して、特定のニーズに最も適したループを見つけてください。

テーブルを操作して計算を実行する

PowerShell は、カウント操作を実行するための多数のメソッドを提供します。最も一般的な手法の 1 つは、次のコマンドの使用です。 測定対象。このコマンドを使用すると、オブジェクトを数えたり、合計、平均、最小値、最大値を計算したりできます。

たとえば、ディレクトリ内のファイルの数をカウントするには、次のようにします。


Get-ChildItem -Path "C:MyFolder" |測定対象

結果には、「C:MyFolder」に存在するファイルとフォルダーの合計数が表示されます。

絵画 PowerShell の は、計算を実行するのに非常に強力です。配列は単なる要素のコレクションです。テーブルを作成するには、要素を括弧内にリストするだけです。


$myArray = @(1, 2, 3, 4, 5)

配列内の要素の数をカウントするには、プロパティを使用できます。 カウント :


$myArray.Count

ループを使用して配列の要素を反復および操作することもできます。たとえば、配列のすべての要素を追加するには、次のようにします。



$合計 = 0
foreach ($myArray の $element) {
    $total += $element
}
$total


このスクリプトは、配列内の各要素を追加し、合計を計算します。

より複雑なタスクの場合、PowerShell を使用すると、次のような配列を使用して .NET メソッドを使用できます。 Where-オブジェクト 項目をフィルタリングするか、 ForEach-Object 各要素に対してアクションを実行します。



# 2 より大きい項目をフィルターします
$filter = $myArray | Where-オブジェクト { $_ -gt 2 }

# 各要素に対してアクションを実行する
$myTable | ForEach-Object { $_ * 2 }


これらの手法は、PowerShell の機能を活用して、次のような方法でデータを操作し、計算を実行します。 効果的 そして 正確な

  • これから宇宙人が救いにきます―ufo搭乗、あなたはできる人?できない人?意識の次元上昇(アセンション)がカギ!2008年、大変動の幕開け
    Binding : Gebundene Ausgabe, medium : Gebundene Ausgabe, ISBN : 4938907445
  • 頭の中を最適化すればスコアは突然縮まる! メンタルで10打よくなる「ゴルフ超思考法」 (じっぴコンパクト新書)
    Binding : Taschenbuch, medium : Taschenbuch, ISBN : 4408456314
  • 子どもをじょうぶにする食事は、時間もお金も手間もかからない
    Binding : Taschenbuch, medium : Taschenbuch, ISBN : 4893089226

Hervé

Comments

Leave a comment

Your comment will be revised by the site if needed.