2017-04-06 28 views
0

我想下面的環境變量在遠程服務器中查詢環境變量如果(($ ImageName樣「devel的‘) - 或($ ImageName樣’託管」))和我想創建一個條件,如果低於變量,下面在服務器上發現變量值,那麼「ADE安裝目錄是成功的」其他「ADE安裝目錄失敗」如何查詢從PowerShell的

variable name :ADE_INFRA 

variable value : \\scavere01-zfs.us.oim.com\ade_infra 


variable name :ADE_PACKAGES 

variable value : \\scavere01-zfs.us.oim.com\packages\windows 

我已經創建的腳本像下面,但劇本不給任何輸出。我不確定這是否是調用和讀取系統變量的正確方法。任何人都可以幫忙嗎?

if (($ImageName -like "*devel*") -or ($ImageName -like "*hosted*")) 

{ 

$env= (gci env:*).GetEnumerator() | Sort-Object Name | Out-String 

if (ADE_INFRA -eq "\\scavere01-zfs.us.oim.com\ade_infra" -And ADE_PACKAGES -eq "\\scavere01-zfs.us.oim.com\packages\windows") 

     { 

     $ADE = "ADE Installation Success" 

     echo "ADE = ADE Installation Success" 

     } 

     if (ADE_INFRA -eq $null -And ADE_PACKAGES -eq $null) 

     { 

     $ADE = "ADE Installation Failed" 


     echo "ADE = ADE Installation Failed" 
     } 
} 
+0

看看'調用,Command'和'GCI ENV:' –

+1

我看了一遍又一遍,一遍又一遍,但無法弄清楚你想問什麼。 – Clijsters

+2

[無法使用PowerShell從遠程服務器訪問環境變量](http://stackoverflow.com/questions/31845488/cant-access-environment-variable-from-remote-server-with-powershell) –

回答

0

這應該可以解決你與你的代碼中遇到的問題:

if (($ImageName -like "*devel*") -or ($ImageName -like "*hosted*")) 
{ 
    $ADE_INFRA = (gci env:ADE_INFRA).value 
    $ADE_PACKAGES = (gci env:ADE_PACKAGES).value 

    if ($ADE_INFRA -eq "\\scavere01-zfs.us.oim.com\ade_infra" -And $ADE_PACKAGES -eq "\\scavere01-zfs.us.oim.com\packages\windows") 
    { 
     $ADE = "ADE Installation Success" 
    } 
    else 
    { 
     $ADE = "ADE Installation Failed" 
    } 

    Write-Host "ADE = $ADE" 
}