2016-09-30 3 views
0

Я пытаюсь разбить список свойств имени после глагола/дефиса и заставить его работать, но сначала мне нужно было сохранить его в файл.Расщепление Powershell в конвейере

Я получил его на работу, как это - Grab свойства Имя и добавить их в файл -

Get-Command -Module Posh-SSH | Format-Table Name | out-file posh_ssh 

затем разделить список на «-»

Get-Content .\posh_ssh | % {$_.split("-")[1]} 

Но есть способ сделать это на одной линии? Я не понимаю, почему это не сработало.

Спасибо!

+0

Спасибо, Мэтт, я не знал, t реализовать формат таблицы был ключ к ней. На самом деле нужно где-то задавать новички вопросы, как разница между passthru и tee – JohnRain

ответ

1

Формат - это командлет форматирования, он никогда не должен использоваться нигде, кроме последнего раздела конвейера, поскольку он не передает «истинные» объекты в конвейер. Что вы можете сделать вместо этого использовать Select-Object, чтобы захватить вещь, которую вы хотите, например, так (заменить имя модуля с модулем я был на моем собственном компьютере):

Get-Command -Module microsoft.powershell.management | select-object -expand Name | % {$_.split("-")[1]}

Тем не менее, для этого что объекты, полученные командой get-command, являются богатыми объектами сами по себе и содержат атрибут «существительное», который является тем, что я предполагаю, что вы в конце концов: Get-Command -Module microsoft.powershell.management | select-object -ExpandProperty verb

Смежные вопросы