스크립트 테스트를 위한 PowerShell의 에코 기능
PowerShell 스크립트에서 플래그를 설정하고 스크립트 전체에서 데이터가 일치하는 것을 확인하여 변수와 값을 출력하고 싶습니다.
어떻게 해야 하나요?
예를 들어 다음 PHP 코드에 해당하는 PowerShell은 무엇입니까?
echo "filesizecounter: " . $filesizecounter
여러 가지 방법이 있습니다.
function/cmdlet 출력에는 포함되지 않고 콘솔에 직접 Write-Host
기록합니다.전경 및 배경 색상을 설정할 수 있습니다.
계속 또는 중지로 설정된 경우 콘솔에 직접 Write-Debug
기록합니다.
계속 또는 중지로 설정된 경우 콘솔에 직접 Write-Verbose
기록합니다.
후자는 추가적인 선택적 정보를 위한 것입니다.Write-Debug
디버깅을 위해(이 경우에는 적합할 것으로 보입니다).
추가:PSH2(최소한)에서 cmdlet 바인딩을 사용하는 스크립트는 자동으로 다음을 가져옵니다.-Verbose
그리고.-Debug
스위치 매개 변수, 로컬에서 활성화Write-Verbose
그리고.Write-Debug
컴파일된 cmdlet 및 공급자가 수행하는 것처럼 (즉, 기본 설정 변수를 재정의함).
Powershell에 별칭 매핑이 있습니다.echo
로.Write-Output
다음을 사용할 수 있습니다.
echo "filesizecounter : $filesizecounter"
PowerShell이 인터폴을 합니다. 그렇죠?
PHP에서
echo "filesizecounter: " . $filesizecounter
다음과 같이 쓸 수도 있습니다.
echo "filesizecounter: $filesizecounter"
PowerShell에서는 다음과 같은 기능이 필요에 적합합니다.
Write-Host "filesizecounter: $filesizecounter"
Write-Host "filesizecounter : " $filesizecounter
파워셸에서 반향을 일으키는 가장 쉬운 방법은 문자열 개체를 만들고 파이프라인에서 출력하도록 하는 것입니다.
$filesizecounter = 8096
"filesizecounter : $filesizecounter"
물론 쓰기* 방법을 사용하지 않을 때는 유연성을 포기해야 합니다.
echo는 Write-Output의 별칭이지만 Write-Host와 동일하게 보입니다.
그것은 아닙니다. PowerShell에서 에코와 쓰기 호스트의 차이점은 호스트의 차이점이 무엇입니까?
echo는 성공 출력 스트림에 쓰는 Write-Output의 별칭입니다.이렇게 하면 출력을 파이프라인을 통해 처리하거나 파일로 리디렉션할 수 있습니다.쓰기-호스트가 콘솔에 직접 쓰기 때문에 출력을 더 이상 리디렉션/처리할 수 없습니다.
쓰기 호스트가 정상적으로 작동합니다.
$Filesize = (Get-Item $filepath).length;
Write-Host "FileSize= $filesize";
Set-PSDebug가 구식과 유사하다는 점도 언급해야 합니다.echo on
배치 명령:
Set-PSDebug -Trace 1
이 명령을 실행하면 실행 중인 스크립트의 모든 행이 표시됩니다.
그 때.
Trace
매개 변수의 값은 다음과 같습니다.1
스크립트의 각 행은 실행되는 동안 추적됩니다.매개 변수의 값이 다음과 같을 때2
변수 할당, 함수 호출 및 스크립트 호출도 추적됩니다.에 약에만.Step
매개 변수가 지정되면 스크립트의 각 행이 실행되기 전에 메시지가 표시됩니다.
에는 PowerShell과 같은 인 명령에 .echo
을
Get-Alias echo
응답 받기:
CommandType Name Version Source
----------- ---- ------- ------
Alias echo -> Write-Output
에도 심어지도 Get-Alias 명있습다니별이라는 별칭이 있습니다.gal -> Get-Alias
당신은 쓸 수 있습니다.gal echo
에 대한 echo
.
gal echo
기타 별칭은 다음과 같습니다. https://learn.microsoft.com/en-us/powershell/scripting/learn/using-familiar-command-names?view=powershell-6
cat dir mount rm cd echo move rmdir chdir erase popd sleep clear h ps sort cls history pushd tee copy kill pwd type del lp r write diff ls ren
그렇게 하는 것이 현명한 것인지는 모르겠지만, 당신은 그냥 글을 쓸 수 있습니다.
"filesizecounter: " + $filesizecounter
출력해야 합니다.
파일 크기 카운터: 값
ㅠㅠGet-Content .\yourScript.PS1
스크립트의 내용을 볼 수 있습니다.
또한 스크립트 코드에 다음 행을 삽입할 수 있습니다.
get-content .\scriptname.PS1
script code
script code
....
언급URL : https://stackoverflow.com/questions/707646/echo-equivalent-in-powershell-for-script-testing
'programing' 카테고리의 다른 글
파이썬 사전: u' chars 제거 (0) | 2023.05.06 |
---|---|
WPF의 확인란 왼쪽에 있는 텍스트? (0) | 2023.05.06 |
Angular-cli에서 모듈을 생성하는 동안 라우팅 모듈 생성 (0) | 2023.05.06 |
빌드 번호를 늘리는 더 좋은 방법은 무엇입니까? (0) | 2023.05.06 |
JavaHL 라이브러리를 로드하지 못했습니다. (0) | 2023.05.06 |