예를 들어, 나는 다음 스니핏:
$assoc = New-Object psobject -Property @{
Id = 42
Name = "Slim Shady"
Owner = "Eminem"
}
Write-host $assoc.Id + " - " + $assoc.Name + " - " + $assoc.Owner
D # 39 이 스니핏을 작성되지는 i& 표시하십시오:
>. '42 - Slim Shady - 에미넴'
대신 보여준다.
>. + + + + - 에미넴 '-' 42tb Slim Shady
이와 함께 PowerShell 외곽진입 어떻게 할까요?
Write-Host "$($assoc.Id) - $($assoc.Name) - $($assoc.Owner)"
[Windows PowerShell 언어 사양명세 버전 3.0] [1], 볼, 표현식에서는 서브노드 p34 개확장.
[1]: https://www.microsoft.com/en-us/download/details.aspx 36389? id =
아무도 차이는 단일 및 큰따옴표 언급한 것으로 보인다. (I am flexlm*용 PowerShell 4).
이렇게 할 수 있습니다 (as @Ben 기도하였나니):
$name = 'Slim Shady'
Write-Host 'My name is'$name
-> My name is Slim Shady
또는 이 작업을 수행할 수 있습니다.
$name = 'Slim Shady'
Write-Host "My name is $name"
-> My name is Slim Shady
이 같은 단일 따옴표는 ipv6-literal., 출력 문자열에 대해 정확히 .하십시오. 이 경우 일부 큰따옴표 있다 운영까지도 처리 완료 (같은 변수, 특수 문자 등)
그래서:
$name = "Marshall Bruce Mathers III"
Write-Host "$name"
-> Marshall Bruce Mathers III
반면:
$name = "Marshall Bruce Mathers III"
Write-Host '$name'
-> $name
(http://ss64.com/ps/syntax-esc.html) 나 찾기 위해 좋은 참조).
한 가지 방법은 다음과 같습니다.
Write-host "$($assoc.Id) - $($assoc.Name) - $($assoc.Owner)"
다른 하나는:
Write-host ("{0} - {1} - {2}" -f $assoc.Id,$assoc.Name,$assoc.Owner )
스피커에만 (근데 난 don& # 39, t like it;) ):
Write-host $assoc.Id " - " $assoc.Name " - " $assoc.Owner
또 다른 옵션은:
$string = $assoc.ID
$string += " - "
$string += $assoc.Name
$string += " - "
$string += $assoc.Owner
Write-Host $string
이 " best"; 아마 이 방법은 하나의 C. B. 것이 좋습니다.
Write-host "$($assoc.Id) - $($assoc.Name) - $($assoc.Owner)"
반면 표현식에서는:
"string1" + "string2" + "string3"
연결 문자열을 했다. You need to put a $ 앞에 있게 전달될 때 괄호를 단일 인수로 평가하십시오 powershell 함장님이요 예:
Write-Host $( "string1" + "string2" + "string3" )
보너스로, 스케쳐내 redhat. 흐름선 관심용 마크 워드 바크티크 구문을 사용하는 데 필요한 여러 줄의 끝에 (공백이나 문자이어야 없이 오른쪽에 바크티크). 예:
Write-Host $(`
"The rain in " +`
"Spain falls mainly " +`
"in the plains" )`
-ForegroundColor Yellow
(사실, 내가 조금 单捞磐啊 사이에 불필요한 진드기 뒤로를 의해 잘못된 powershell 실시하고 있다고 합니다. 그냥 경우 Microsoft 아니하였으매 " 준수하십시오 Python"; 또는 " TCL"; 줄 바꿈 규칙을 많이 넣을 수 있도록 괄호가 괄호가 그들이 원하는 대로 시작과 끝 사이에 대부분의 문제는 해결될 것이라고 믿었던 사람들이 마음에 don& # 39 의 행 계속 및 연결 써줬지 powershell 관련된 정보. # 39 의 줄 수 있다는 것을 그대로 둘 수 있으며, ve i& 진드기 뒤로를 오프하도록 연속 요청 및 예측 불가능한 경우 괄호 사이의 보유하고 있지만 가끔 정말 플라키 작동합니다. 그 것이 이 추가하기만 박트릭스.)
난 그냥 또 다른 방법으로 재연됩니다 사용하여 이 .NET [스테링스포르마] [1]:
$name = "Slim Shady"
Write-Host ([string]::Format("My name is {0}", $name))
[1]: 이아스파스 https://msdn.microsoft.com/en-us/library/system.string.format (v = vs. 110)
마찬가지로 DOS 의 연결 문자열을 일입니다. This is a big deal for 로깅하기 그러하매 시작합시다.
$strDate = Get-Date
$strday = "$($strDate.Year)$($strDate.Month)$($strDate.Day)"
Write-Output "$($strDate.Year)$($strDate.Month)$($strDate.Day)"
Write-Output $strday
$assoc = @{
Id = 34
FirstName = "John"
LastName = "Doe"
Owner = "Wife"
}
$assocId = $assoc.Id
$assocFN = $assoc.FirstName
$assocLN = $assoc.LastName
$assocName = $assocFN, $assocLN -Join " "
$assocOwner = $assoc.Owner
$assocJoin = $assocId, $assocName, $assocOwner -join " - "
$assocJoin
#Output = 34 - John Doe - Wife
딱 재미있는. 다음과 같은 값을 직접 파노비치 액세스하려면 수도 있습니다.
$assoc.psobject.Properties.value -join " - "
하지만 해당 객체를 지정하지 않으면 안 된다, 임의의 값을 주문하십시오 오더해야 Powershell 표시됩니다. 그래서 [순서정리된] 플래깅 추가해야 한다.
$assoc = [pscustomobject] [ordered] @{
Id = 42
Name = "Slim Shady"
Owner = "Eminem"
}