PowerShell 콘솔에 쓰는 방법
콘솔에 (에코)를 인쇄하는 다양한 방법에 대해 조금 혼란이 있습니다.콘솔에 출력을 쓰는 방법에는 다음과 같은 여러 가지가 있습니다.
Write-Host "Hello world1"
"Hello World2"
Out-Host -InputObject "Hello World3"
3가지 방법 모두 콘솔에 인쇄됩니다.가운데 것은 다소 단순하고 덜 장황하고 사용하기 쉽다.또, 다음과 같은 함수를 작성할 때도, 다음과 같은 것을 알 수 있습니다.
function GetValues()
{
"1"
"2"
}
그래도 파이프라인에 다음 두 개의 문자열이 반환됩니다.
그리고 나는 여전히 값을 인쇄할 수 있다:
foreach ($s in GetValues)
{
Write-Host "s: " $s
}
여기서 깨달은 것은 따옴표로 묶인 문자열만 사용하는 것이 커스텀호스트에 항상 표시되는 것은 아니고, 커스텀호스트에 인쇄하는 값을 취득하기 위해서 기입 호스트를 사용할 필요가 있었습니다.
어쩐지 헷갈리네요.이"Print something"
가명이라고 생각되다Write-Host
또는 목적이 무엇입니까?
PowerShell의 기본 동작은 다른 파이프라인 요소에 의해 픽업되거나 변수에 할당(또는 리다이렉트)되지 않고 파이프라인에서 떨어진 모든 것을 덤프하는 것입니다.Out-Host
. 뭐?Out-Host
호스트에 의존합니다.
파이프라인에서 물건을 빼내는 것만으로는Write-Host
호스트 애플리케이션에서 텍스트를 출력하는 유일한 이유로 존재합니다.
출력을 원할 경우,Write-*
cmdlets.함수에서 값을 반환하려면 cmdlet 없이 개체를 덤프하십시오.
가운데는 파이프라인에 글을 씁니다. Write-Host
그리고.Out-Host
는 콘솔에 씁니다.'timeout'은 에일리어스입니다.Write-Output
파이프라인에도 쓸 수 있습니다.콘솔에 쓰는 가장 좋은 방법은Write-Host
cmdlet.
객체가 파이프라인에 기록될 때 체인의 다른 명령에 의해 사용될 수 있습니다.예를 들어 다음과 같습니다.
"hello world" | Do-Something
하지만 이것은 효과가 없을 것이다.Write-Host
파이프라인이 아닌 콘솔에 씁니다(Do-Something은 문자열을 가져오지 않습니다).
Write-Host "hello world" | Do-Something
언급URL : https://stackoverflow.com/questions/10832000/how-to-write-to-the-console-in-powershell
'programing' 카테고리의 다른 글
Flatter Doctor --android-licenses : 스레드 "main" java.lang에 예외가 있습니다.NoClassDefFoundError(NoClassDefFound 오류) (0) | 2023.04.08 |
---|---|
PowerShell에 권장되는 코딩 스타일은 무엇입니까? (0) | 2023.04.08 |
PowerShell - 시작 프로세스 및 cmdline 스위치 (0) | 2023.04.08 |
SQL Server 2008에서 문자열에 선행 0을 패딩하여 3자 길이 설정 (0) | 2023.04.08 |
PowerShell 스크립트에 인수를 전달하려면 어떻게 해야 합니까? (0) | 2023.04.08 |