1

という名前の変数に PSCustomObject の配列が含まれています$attendance

event name date       present
----- ---- ----       -------
A01   Mika 2021-02-22 1
A01   John 2021-02-22 0
B03   Mika 2021-02-24 0
B03   John 2021-02-24 1

present列の値を次のように変更する必要があります。

event name date       present
----- ---- ----       -------
A01   Mika 2021-02-22 Yes
A01   John 2021-02-22 No
B03   Mika 2021-02-24 No
B03   John 2021-02-24 Yes

ループで変更できForEach-Objectますが、これはオブジェクト全体を反復処理します。

$attendance | 
   ForEach-Object { 
      if ($_.present -eq '1') { $_.present = 'Yes' } else {$_.present = 'No' } 
   }

$attendanceコードを短くするために、次のバリエーションを試しましたが、変数に折り返すことができませんでした。

$attendance.present.replace('1','Yes').replace('0','No')

presentドット表記を使用して列の値を変更するワンライナーまたはより簡単な方法はありますか?

4

4 に答える 4