Powershell: Format-Table: количество нелегальных ключей

Я получаю следующую ошибку, и я не понимаю, почему или о чем она просит.

Объект, который я пытаюсь отобразить в таблице:

function newURLObject()
{
#  param ([String]$Value, [Int]$Count = "1", [String]$IP )
   param ([String]$Value, [Int]$Count = "1" )


  $obj = new-object PSObject
  $obj | add-member -type NoteProperty -Name Value -Value $Value.substring(1)
  $obj | add-member -type NoteProperty -Name Count -Value $Count
 # $obj | add-member -type NoteProperty -Name IP -Value $IP

  return $obj
}

Основной поток заключается в следующем.

#< Declare Objects>
#< Code to create an array of those objects >

$z = @{Expression={$_.Count};Label="Count";width=5}, @{Expression={$_.Value};Label="URL";count=35} 

$y = $listOfRequestedURLs  | sort count -descending | select -first 30 | ft $z 


Format-Table : Illegal key count
At C:\Temp\parse IIS logs.ps1:231 char:8
+ $y | ft <<<<  $z
    + CategoryInfo          : InvalidArgument: (:) [Format-Table], NotSupportedException
    + FullyQualifiedErrorId : DictionaryKeyIllegal,Microsoft.PowerShell.Commands.FormatTableCommand

Я знаю значения в массиве; но он не будет отображаться правильно. Если я показываю его без таблицы форматов, поле значения просто отображается как пустое.

1 ответ

У вас есть недопустимое имя ключа формата, удалите его (или переименуйте в width?):

@ {Expression = {$ _ Value};. Ярлык = "URL";count = 35}

Другие вопросы по тегам