Select-Objectを使用すると、PowershellでDataRow/DataTableをPSCustomObjectに自動変換する必要があります。 PSCustomObjectへの変換を実行し、MACアドレスのフォーマットを1行で処理するために実行するものは次のとおりです。これは、特定のインデックス(サンプルコードなど)の単一の行に適用することも、DataTable全体に対して適用してPSObjectの配列に変換することもできます。
MACアドレスのフォーマットでは、元の英数字以外の文字がすべて削除され、小文字にキャストされてから、適切なインデックスにハイフンが挿入されます。
$devices.table[10] | Select-Object name,ip,@{N="MAC-Address";E={((((($_.mac -replace '[^a-zA-Z0-9]','').ToLower().insert(2,"-")).insert(5,"-")).insert(8,"-")).insert(11,"-")).insert(14,"-")}},vendor