넓은 보기는 표시되는 각 개체에 대한 단일 값을 표시합니다. 표시된 값은 .NET 개체 속성의 값 또는 스크립트 값일 수 있습니다. 기본적으로 이 보기에 대한 레이블이나 헤더는 없습니다.
넓은 보기 표시
다음 예제에서는 출력이 Format-Wide cmdlet에 파이프될 때 Get-Process cmdlet에서 반환하는 System.Diagnostics.Process 개체를 Windows PowerShell에서 표시하는 방법을 보여 줍니다. 기본적으로 Get-Process cmdlet은 테이블 뷰를 반환합니다. 이 예제에서는 두 열을 사용하여 반환된 각 개체에 대한 프로세스의 이름을 표시합니다. 개체의 속성 이름은 표시되지 않고 속성 값만 표시됩니다.
Get-Process | Format-Wide
AEADISRV agrsmsvc
Ati2evxx Ati2evxx
audiodg CCC
CcmExec communicator
Crypserv csrss
csrss DevDtct2
DM1Service dpupdchk
dwm DxStudio
EXCEL explorer
GoogleToolbarNotifier GrooveMonitor
hpqwmiex hpservice
Idle InoRpc
InoRT InoTask
ipoint lsass
lsm MOM
MSASCui notepad
... ...
넓은 보기 정의
다음 XML은 System.Diagnostics.Process 개체에 대한 와이드 뷰 스키마를 보여 줍니다.
<View>
<Name>process</Name>
<ViewSelectedBy>
<TypeName>System.Diagnostics.Process</TypeName>
</ViewSelectedBy>
<GroupBy>...</GroupBy>
<Controls>...</Controls>
<WideControl>
<WideEntries>
<WideEntry>
<WideItem>
<PropertyName>ProcessName</PropertyName>
</WideItem>
</WideEntry>
</WideEntries>
</WideControl>
</View>
다음 XML 요소는 넓은 보기를 정의하는 데 사용됩니다.
- View 요소는 와이드 뷰의 부모 요소입니다. 테이블, 목록 및 사용자 지정 컨트롤 뷰에 대해 동일한 부모 요소입니다.
- Name 요소는 뷰의 이름을 지정합니다. 이 요소는 모든 보기에 필요합니다.
- ViewSelectedBy 요소는 뷰를 사용하는 개체를 정의합니다. 이 요소는 필수 요소입니다.
- GroupBy 요소는 새 개체 그룹이 표시되는 시기를 정의합니다. 특정 속성 또는 스크립트의 값이 변경될 때마다 새 그룹이 시작됩니다. 이 요소는 선택적입니다.
- 컨트롤 요소는 넓은 보기로 정의된 사용자 지정 컨트롤을 정의합니다. 컨트롤을 사용하면 데이터가 표시되는 방법을 추가로 지정할 수 있습니다. 이 요소는 선택적입니다. 뷰는 고유한 사용자 지정 컨트롤을 정의하거나 서식 파일의 모든 보기에서 사용할 수 있는 공용 컨트롤을 사용할 수 있습니다. 사용자 지정 컨트롤에 대한 자세한 내용은 사용자 지정 컨트롤 만들기참조하세요.
- WideControl 요소 및 해당 자식 요소는 보기에 표시되는 항목을 정의합니다. 앞의 예제에서 보기는 System.Diagnostics.Process.ProcessName 속성을 표시하도록 설계되었습니다.
간단한 와이드 보기를 정의하는 전체 서식 파일의 예는 와이드 뷰(기본)참조하세요.
넓은 보기에 대한 정의 제공
와이드 보기는 WideControl 요소의 자식 요소를 사용하여 하나 이상의 정의를 제공할 수 있습니다. 일반적으로 뷰에는 정의가 하나만 있습니다. 다음 예제에서 뷰는 System.Diagnostics.Process.ProcessName 속성을 표시하는 단일 정의를 제공합니다. 넓은 보기는 속성 값이나 스크립트의 값을 표시할 수 있습니다(예제에는 표시되지 않음).
<WideControl>
<AutoSize/>
<ColumnNumber></ColumnNumber>
<WideEntries>
<WideEntry>
<WideItem>
<PropertyName>ProcessName</PropertyName>
</WideItem>
</WideEntry>
</WideEntries>
</WideControl>
다음 XML 요소를 사용하여 넓은 보기에 대한 정의를 제공할 수 있습니다.
- WideControl 요소 및 해당 자식 요소는 보기에 표시되는 항목을 정의합니다.
- AutoSize 요소는 열 크기와 열 수가 데이터 크기에 따라 조정되는지 여부를 지정합니다. 이 요소는 선택적입니다.
- ColumnNumber 요소는 넓은 보기에 표시되는 열 수를 지정합니다. 이 요소는 선택적입니다.
- WideEntries 요소는 뷰의 정의를 제공합니다. 대부분의 경우 뷰에는 정의가 하나만 있습니다. 이 요소는 필수 요소입니다.
- WideEntry 요소는 뷰의 정의를 제공합니다. 하나 이상의 WideEntry 필요합니다. 그러나 추가할 수 있는 요소 수에는 최대 제한이 없습니다. 대부분의 경우 뷰에는 정의가 하나만 있습니다.
- EntrySelectedBy 요소는 특정 정의에 의해 표시되는 개체를 지정합니다. 이 요소는 선택 사항이며 다른 개체를 표시하는 여러 WideEntry 요소를 정의하는 경우에만 필요합니다.
- WideItem 요소는 뷰에 표시되는 데이터를 지정합니다. 다른 유형의 보기와 달리 넓은 컨트롤은 하나의 항목만 표시할 수 있습니다.
- PropertyName 요소는 값이 뷰에 표시되는 속성을 지정합니다. 속성 또는 스크립트를 지정해야 하지만 둘 다 지정할 수는 없습니다.
- ScriptBlock 요소는 뷰에 값이 표시되는 스크립트를 지정합니다. 스크립트 또는 속성을 지정해야 하지만 둘 다 지정할 수는 없습니다.
- FormatString 요소는 데이터를 표시하는 데 사용되는 패턴을 지정합니다. 이 요소는 선택적입니다.
와이드 뷰 정의를 정의하는 전체 서식 파일의 예는 와이드 뷰(기본)참조하세요.
넓은 보기를 사용하는 개체 정의
와이드 뷰를 사용하는 .NET 개체를 정의하는 방법에는 두 가지가 있습니다. ViewSelectedBy 요소를 사용하여 뷰의 모든 정의에서 표시할 수 있는 개체를 정의하거나 EntrySelectedBy 요소를 사용하여 뷰의 특정 정의에 의해 표시되는 개체를 정의할 수 있습니다. 대부분의 경우 뷰에는 정의가 하나만 있으므로 개체는 일반적으로 ViewSelectedBy 요소에 의해 정의됩니다.
다음 예제에서는 ViewSelectedBy 사용하여 와이드 뷰에 표시되는 개체를 정의하고 TypeName 요소를 방법을 보여 줍니다. 지정할 수 있는 TypeName 요소의 수에는 제한이 없으며 순서는 중요하지 않습니다.
<View>
<Name>System.ServiceProcess.ServiceController</Name>
<ViewSelectedBy>
<TypeName>System.Diagnostics.Process</TypeName>
</ViewSelectedBy>
<WideControl>...</WideControl>
</View>
다음 XML 요소를 사용하여 넓은 보기에서 사용되는 개체를 지정할 수 있습니다.
- ViewSelectedBy 요소는 넓은 보기에서 표시되는 개체를 정의합니다.
- TypeName 요소는 뷰에 표시되는 .NET을 지정합니다. 정규화된 .NET 형식 이름이 필요합니다. 뷰에 대해 하나 이상의 형식 또는 선택 집합을 지정해야 하지만 지정할 수 있는 최대 요소 수는 없습니다.
전체 서식 파일의 예는 와이드 뷰(기본)참조하세요.
다음 예제에서는 ViewSelectedBy 및 SelectionSetName 요소를 사용합니다. 동일한 개체에 대해 넓은 보기 및 테이블 뷰를 정의하는 경우와 같이 여러 보기를 사용하여 표시되는 관련 개체 집합이 있는 선택 집합을 사용합니다. 선택 집합을 만드는 방법에 대한 자세한 내용은 선택 집합 정의참조하세요.
<View>
<Name>System.ServiceProcess.ServiceController</Name>
<ViewSelectedBy>
<SelectionSetName>.NET Type Set</SelectionSetName>
</ViewSelectedBy>
<WideControl>...</WideControl>
</View>
다음 XML 요소를 사용하여 넓은 보기에서 사용되는 개체를 지정할 수 있습니다.
- ViewSelectedBy 요소는 넓은 보기에서 표시되는 개체를 정의합니다.
- SelectionSetName 요소는 보기에서 표시할 수 있는 개체 집합을 지정합니다. 뷰에 대해 하나 이상의 선택 집합 또는 형식을 지정해야 하지만 지정할 수 있는 최대 요소 수는 없습니다.
다음 예제에서는 EntrySelectedBy 요소를 사용하여 와이드 뷰의 특정 정의에 의해 표시되는 개체를 정의하는 방법을 보여 줍니다. 이 요소를 사용하여 개체의 .NET 형식 이름, 개체의 선택 집합 또는 정의 사용 시기를 지정하는 선택 조건을 지정할 수 있습니다. 선택 조건을 만드는 방법에 대한 자세한 내용은 데이터표시하기 위한 조건 정의를 참조하세요.
<WideEntry>
<EntrySelectedBy>
<TypeName>.NET Type</TypeName>
</EntrySelectedBy>
</WideEntry>
다음 XML 요소를 사용하여 와이드 뷰의 특정 정의에 사용되는 개체를 지정할 수 있습니다.
- EntrySelectedBy 요소는 정의에 의해 표시되는 개체를 정의합니다.
- TypeName 요소는 정의에 의해 표시되는 .NET을 지정합니다. 이 요소를 사용하는 경우 정규화된 .NET 형식 이름이 필요합니다. 정의에 대해 하나 이상의 형식, 선택 집합 또는 선택 조건을 지정해야 하지만 지정할 수 있는 최대 요소 수는 없습니다.
- SelectionSetName 요소(표시되지 않음)는 이 정의에서 표시할 수 있는 개체 집합을 지정합니다. 정의에 대해 하나 이상의 형식, 선택 집합 또는 선택 조건을 지정해야 하지만 지정할 수 있는 최대 요소 수는 없습니다.
- SelectionCondition 요소(표시되지 않음)는 이 정의를 사용하려면 존재해야 하는 조건을 지정합니다. 정의에 대해 하나 이상의 형식, 선택 집합 또는 선택 조건을 지정해야 하지만 지정할 수 있는 최대 요소 수는 없습니다. 선택 조건 정의에 대한 자세한 내용은 데이터표시하기 위한 조건 정의를 참조하세요.
넓은 보기에서 개체 그룹 표시
넓은 보기에 표시되는 개체를 그룹으로 구분할 수 있습니다. 즉, 특정 속성 또는 스크립트의 값이 변경 될 때마다 Windows PowerShell에서 새 그룹을 시작 하는 그룹을 정의 하는 것을 의미 하지는 않습니다. 다음 예제에서는 System.ServiceProcess.ServiceController.ServiceType 속성의 값이 변경될 때마다 새 그룹이 시작됩니다.
<GroupBy>
<Label>Service Type</Label>
<PropertyName>ServiceType</PropertyName>
</GroupBy>
다음 XML 요소는 그룹이 시작되는 시기를 정의하는 데 사용됩니다.
- GroupBy 요소는 새 그룹을 시작하는 속성 또는 스크립트를 정의하고 그룹이 표시되는 방법을 정의합니다.
- PropertyName 요소는 값이 변경 될 때마다 새 그룹을 시작하는 속성을 지정합니다. 그룹을 시작하려면 속성이나 스크립트를 지정해야 하지만 둘 다 지정할 수는 없습니다.
- ScriptBlock 요소는 값이 변경 될 때마다 새 그룹을 시작하는 스크립트를 지정합니다. 그룹을 시작하려면 스크립트 또는 속성을 지정해야 하지만 둘 다 지정할 수는 없습니다.
- Label 요소는 각 그룹의 시작 부분에 표시되는 레이블을 정의합니다. 이 요소에서 지정한 텍스트 외에도 Windows PowerShell은 새 그룹을 트리거한 값을 표시하고 레이블 앞과 뒤의 빈 줄을 추가합니다. 이 요소는 선택적입니다.
- CustomControl 요소는 데이터를 표시하는 데 사용되는 컨트롤을 정의합니다. 이 요소는 선택적입니다.
- CustomControlName 요소는 데이터를 표시하는 데 사용되는 공통 또는 뷰 컨트롤을 지정합니다. 이 요소는 선택적입니다.
그룹을 정의하는 전체 서식 파일의 예는 Wide View(GroupBy)참조하세요.
형식 문자열 사용
서식 문자열을 넓은 보기에 추가하여 데이터가 표시되는 방식을 추가로 정의할 수 있습니다. 다음 예제에서는 StartTime
속성의 값에 대 한 서식 문자열을 정의 하는 방법을 보여 있습니다.
<WideItem>
<PropertyName>StartTime</PropertyName>
<FormatString>{0:MMM} {0:DD} {0:HH}:{0:MM}</FormatString>
</WideItem>
다음 XML 요소를 사용하여 서식 패턴을 지정할 수 있습니다.
- WideItem 요소는 뷰에 표시되는 데이터를 지정합니다.
- PropertyName 요소는 값이 뷰에 표시되는 속성을 지정합니다. 속성 또는 스크립트를 지정해야 하지만 둘 다 지정할 수는 없습니다.
- FormatString 요소는 속성 또는 스크립트 값이 뷰에 표시되는 방식을 정의하는 형식 패턴을 지정합니다.
- ScriptBlock 요소(표시되지 않음)는 뷰에 값이 표시되는 스크립트를 지정합니다. 스크립트 또는 속성을 지정해야 하지만 둘 다 지정할 수는 없습니다.
다음 예제에서는 스크립트 값의 형식을 지정하기 위해 ToString
메서드가 호출됩니다. 스크립트는 개체의 모든 메서드를 호출할 수 있습니다. 따라서 개체에 서식 매개 변수가 있는 ToString
같은 메서드가 있는 경우 스크립트는 해당 메서드를 호출하여 스크립트의 출력 값 형식을 지정할 수 있습니다.
<WideItem>
<ScriptBlock>
[string]::Format("{0,-10} {1,-8}", $_.LastWriteTime.ToString("d"), $_.LastWriteTime.ToString("t"))
</ScriptBlock>
</WideItem>
다음 XML 요소를 사용하여 ToString
메서드를 호출할 수 있습니다.
- WideItem 요소는 뷰에 표시되는 데이터를 지정합니다.
- ScriptBlock 요소(표시되지 않음)는 뷰에 값이 표시되는 스크립트를 지정합니다. 스크립트 또는 속성을 지정해야 하지만 둘 다 지정할 수는 없습니다.
또한 참조하십시오
PowerShell