Мой входной файл (CSV) читается так:Powershell - сохраняют ведущие нули
$recvCSV = Import-Csv $g_inputFile
и выглядит, как показано ниже. В столбце адреса указывается MAC-адрес, и я хочу сохранить начальные нули.
currentTime, SeqNum, Address, Location
1382393056692, 0,
1382393056860, 0, 38:1c:4a:0:8d:d
1382393057194, 1,
1382393057360, 1, 38:1c:4a:0:8d:d
Мой вывод должен быть таким:
38:1c:4a:00:8d:0d
Это мои попытки получения ведущие нули:
$recvCSV | ? { $null, '' -notcontains $_.Address } | Group-Object Address | % { "{0:00 0:00 0:00 0:00 0:00 0:00}" -f $_.Name }
$recvCSV | ? { $null, '' -notcontains $_.Address } | Group-Object Address | % { "[string]::format "0:00 0:00 0:00 0:00 0:00 0:00", $_.Name }
$recvCSV | ? { $null, '' -notcontains $_.Address } | Group-Object Address | % { "0:00;0:00;0:00;0:00;0:00;0:00" -f $_.Name }
I, упомянутые ниже сайты:
http://blog.stevex.net/string-formatting-in-csharp/
http://msdn.microsoft.com/en-us/library/fbxft59x.aspx
http://jdhitsolutions.com/blog/2012/01/format-leading-zeros-in-powershell/
Пожалуйста, дайте мне знать, что я делаю неправильно.
EDIT: Моя основная забота заключается в том, как обеспечить, чтобы ноль был вставлен в нужное место (90 против 09)? Я привел несколько примеров ниже.
38:1c:4a:__:8d:_d ==> 38:1c:4a:00:8d:0d
__:9_:4c:11:22:33 ==> 00:90:4c:11:22:33