Как убрать лишний пробел между столбцами в Powershell Format-Table - PullRequest
1 голос
/ 07 июля 2010

Я конвертирую некоторые данные CSV в формат файла, который ожидает значения определенных позиций в строке.Я думал, что я буду использовать format-table для достижения этой цели путем установки ширины столбцов.Однако это добавляет нежелательное дополнительное пространство между столбцами.Есть ли способ удалить пробел или есть другие варианты форматирования, которые я мог бы использовать?

$format = 
@{E={$_.lname}; width=30},
@{E={$_.fname}; width=30},
@{E={$_.dob}; width=8},
@{E={if($_.sex -eq 'F') { 'V' } elseif($_.sex -ne 'M') { 'O' } else { $_.sex} }; width=1},

...

@{E={if($_.mstatus -eq 'M') {'Y'} else {'N'}}; width=1;},
@{E={$_.social}; width=50};

import-csv -Delimiter '|' .\data.txt | ft $format -hidetableheaders | out-file -width 2500 'c:\temp\temp.txt'

1 Ответ

4 голосов
/ 07 июля 2010

Невозможно избавиться от лишнего пространства вывода с помощью Format-Table AFAIK.Попробуйте вывести в виде строки, например:

... | Foreach { '{0,-30}{1,-30}{2,-8}' -f $_.lname, $_.fname, $_.dob }

Обратите внимание, что это строка форматирования .NET и применяются все нормальные .NET директивы форматирования .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...