PowerShell은 개발자의 도움을 상당히 제공하지만, 당신의 마음을 읽을 수는 없습니다. 그것은 기본 형식을 통해 최선의 추측을 제공할 수 있지만, 출력의 종류를 내재적으로 알지 못합니다. PowerShell Format-Table cmdlet을 사용하여 출력을 원하는 대로 조정할 수 있습니다.
PowerShell에는 기본 출력과 객체 유형에 따라 출력 형식을 변경할 수 있는 서식 지정 시스템이 있습니다. XML 및 항상 특정한 방식으로 출력을 서식 지정하는 방법에 대해 배우고 싶지 않다면, Powershell format-table, Format-List
, 및 Format-Wide
와 같은 cmdlet을 사용할 수도 있습니다. 파일 시스템의 PS1XML 파일이나 서식 cmdlet 중 하나를 사용하면 출력이 여러 가지 방식으로 표시됩니다.
특별한 형식을 사용하지 않고, 기본적으로 PowerShell은 자체 형식을 사용합니다. 특정 개체가 반환되면 해당 개체 내용의 제한된 부분만 볼 수 있습니다. 예를 들어, 하나의 폴더만 살펴보면 부모 디렉토리와 몇 가지 속성만 볼 수 있습니다.
하지만 동일한 명령을 Select-Object -Property *
로 파이프하면 어떻게 되는지 확인해보세요.
PowerShell은 일반적으로 이 정보를 모두 볼 필요가 없기 때문에 객체의 많은 속성을 숨겼습니다. PowerShell은 기본 뷰를 제공하지만, 이것이 유일한 옵션이라는 뜻은 아닙니다. 우리는 Format cmdlet을 통해 이 뷰를 변경할 수 있습니다.
가장 인기 있는 포맷팅 cmdlet은 Format-Table
입니다. PowerShell 도움말에 따르면:
Format-Table cmdlet은 객체의 선택한 속성을 각 열에 포함하여 명령의 출력을 테이블 형식으로 포맷합니다. 객체 유형은 각 열에 표시되는 기본 레이아웃 및 속성을 결정하지만, Property 매개변수를 사용하여 표시하려는 속성을 선택할 수 있습니다.
해시 테이블을 사용하여 객체를 표시하기 전에 계산된 속성을 추가하고 테이블의 열 제목을 지정할 수도 있습니다. 계산된 속성을 추가하려면 Property 또는 GroupBy 매개변수를 사용하세요.
Powershell Format-Table과 Select-Object
를 사용하여 개별 객체 속성을 선택하는 것은 현재 콘솔의 너비를 벗어나지 않는 한 동일해 보입니다. 그러나 많은 개체를 표시하려고 시도하면, Format-Table
은 테이블 형식을 유지하고, Select-Object
는 각 줄에 속성을 표시하도록 되돌립니다.
Powershell Format-Table 출력은 항상 테이블 형식으로 정보를 표시하려고 시도합니다. 속성 값이 표시되기에 너무 길 경우, 누락된 텍스트를 생략 부호로 대체하여 더 많은 정보가 사용 가능하지만 표시되지 않음을 나타냅니다.
Format-Table
cmdlet은 출력을 조작하는 다양한 방법을 가지고 있습니다. Microsoft 문서에서 Format-Table
의 전체 문서를 확인해보세요.
Source:
https://adamtheautomator.com/powershell-format-table/