2
如何轉義傳遞給get-service的變量?我正在傳遞$ _。NAME,並且這個名稱將包含$(美元)符號,導致它失敗。
如何告訴powershell不考慮該變量的$內部並將其傳遞給get-service並仍然有效?
foreach($machine in $machines) {
Write-Output "$machine ACTIVE NOW: "
Write-Output "---------------------------------"
Get-Service -name "*sql*" -computername $machine -ErrorAction SilentlyContinue |
Sort-Object -Property DisplayName |
foreach{
$k = $machine + " - " + $_.DisplayName
$v = $_Status
$serviceStatus[$k] = $v
Get-Service `$_.Name | Select-Object -ExpandProperty ServicesDependedOn |
foreach{
$kd = $k + "has a dependency on " + $_.DisplayName
$s = $_.Status
$serviceStatus[$kd] = $s
}
}
}
您是否嘗試過使用轉義字符 '\'?另外,不知道這與數據庫有什麼關係......? –
只爲那些試圖關閉這個問題,它實際上不屬於SO。如果有什麼問題可以轉移到SF上,但是DBA.SE還有其他一些關於管理SQL Server服務的問題(無論你只是提取信息還是故障排除)......所以它確實屬於[對此可以提出什麼問題站點(http://dba.stackexchange.com/help/on-topic)。 –
@ ShawnMelton:我不知道這個問題是否是關於SF的話題,但我相信它對於SO來說是完全正確的,並且在很大程度上比DBA.SE.我不相信僅僅因爲PowerShell是一個通用的(而不是特定於數據庫的)腳本環境,而是因爲所討論的問題是通用的而不是數據庫特定的。 –