Write-Output
지정된 개체를 파이프라인에 씁니다.
구문
Write-Output
[-InputObject] <PSObject[]>
[-NoEnumerate]
[<CommonParameters>]
Description
지정된 개체를 파이프라인에 씁니다. 파이프라인의 마지막 명령인 경우 Write-Output
개체가 콘솔에 표시됩니다.
Write-Output
는 개체를 성공 스트림이라고도 하는 기본 파이프라인으로 보냅니다. 오류 스트림에 오류 개체를 보내려면 .를 사용합니다 Write-Error
.
이 cmdlet은 일반적으로 스크립트에서 콘솔에 문자열 및 기타 개체를 표시하는 데 사용됩니다. 기본 제공 별칭 Write-Output
echo
중 하나는 사용하는 echo
다른 셸과 유사합니다. 기본 동작은 파이프라인의 끝에 출력을 표시하는 것입니다. PowerShell에서는 일반적으로 출력이 기본적으로 표시되는 인스턴스에서 cmdlet을 사용할 필요가 없습니다. 예를 들어 Get-Process | Write-Output
는 Get-Process
와 같습니다. 또는 작성 echo "Home directory: $HOME"
"Home directory: $HOME"
할 수 있습니다.
기본적으로 컬렉션의 Write-Output
개체를 열거합니다. 그러나 Write-Output
NoEnumerate 매개 변수를 사용하여 컬렉션을 파이프라인 아래로 단일 개체로 전달할 수도 있습니다.
예제
예제 1: 개체 가져오기 및 콘솔에 쓰기
이 예제에서는 cmdlet의 Get-Process
결과가 변수에 $P
저장됩니다. cmdlet은 Write-Output
프로세스 개체를 콘솔에 $P
표시합니다.
$P = Get-Process
Write-Output $P
예제 2: 출력을 다른 cmdlet에 전달
이 명령은 "test output" 문자열을 cmdlet으로 Get-Member
파이프합니다. 이 cmdlet은 System.String 클래스의 멤버를 표시하여 문자열이 파이프라인을 따라 전달되었음을 보여 줍니다.
Write-Output "test output" | Get-Member
예제 3: 출력에서 열거형 표시 안 함
이 명령은 NoEnumerate 매개 변수를 추가하여 파이프라인을 통해 컬렉션 또는 배열을 단일 개체로 처리합니다.
Write-Output 1,2,3 | Measure-Object
Count : 3
...
Write-Output 1,2,3 -NoEnumerate | Measure-Object
Count : 1
...
매개 변수
-InputObject
파이프라인을 보낼 개체를 지정합니다. 개체를 포함하는 변수를 입력하거나 개체를 가져오는 명령 또는 식을 입력하세요.
형식: | PSObject[] |
Position: | 0 |
Default value: | None |
필수: | True |
파이프라인 입력 허용: | True |
와일드카드 문자 허용: | False |
-NoEnumerate
기본적으로 cmdlet은 Write-Output
항상 출력을 열거합니다. NoEnumerate 매개 변수는 기본 동작을 표시하지 않고 출력을 열거하지 못하게 합니다Write-Output
. 괄호가 강제로 열거되므로 명령이 괄호로 래핑된 경우에는 NoEnumerate 매개 변수가 적용되지 않습니다. 예를 들어 여전히 (Write-Output 1,2,3)
배열을 열거합니다.
NoEnumerate 매개 변수는 파이프라인 내에서만 유용합니다. PowerShell이 모든 명령줄의 끝에 추가 Out-Default
되어 열거형이 발생하므로 콘솔에서 NoEnumerate의 효과를 확인하는 것은 문제가 됩니다. 그러나 다른 cmdlet으로 파이프 Write-Output -NoEnumerate
하는 경우 다운스트림 cmdlet은 컬렉션의 열거된 항목이 아닌 컬렉션 개체를 받습니다.
Important
Windows PowerShell에서 PowerShell 6.2 이상에서 수정된 이 스위치에 문제가 있습니다. NoEnumerate를 사용하고 InputObject 매개 변수를 명시적으로 사용하는 경우 명령은 여전히 열거됩니다. 이 작업을 수행하려면 InputObject 인수를 위치적으로 전달합니다.
형식: | SwitchParameter |
Position: | Named |
Default value: | None |
필수: | False |
파이프라인 입력 허용: | False |
와일드카드 문자 허용: | False |
입력
개체를 이 cmdlet으로 파이프할 수 있습니다.
출력
이 cmdlet은 입력으로 제출된 개체를 반환합니다.
참고
Windows PowerShell에는 다음 별칭이 포함됩니다.Write-Output
echo
write
관련 링크
PowerShell