在下面的powershell腳本中,我傳遞了三個字符串參數。 $ ComputerName參數行按預期工作。我能夠遠程進入我指定的機器。Powershell參數在預期路徑中不能正常工作
1期
上線$ latestbuildfolder我使用$ builddefinition參數指定構建定義。它附加了builddefinition的名稱,但沒有列出該文件夾內的文件夾。如果我通過「TeamBuild」構建定義名稱來替換$ BuildDefinition參數,那麼它可以列出所有文件夾並獲取最新的文件夾。一些我覺得加入不起作用。我嘗試過使用Join-Path,但仍然無法正常工作。
第2期
上線$ deploycmdlocation當我嘗試在該字符串它不工作,指定$配置。它在該路徑之間輸出空白。我使用Write-Host進行檢查,並將參數傳遞給腳本。
param(
[System.String] $ComputerName,
[System.String] $Configuration,
[System.String] $BuildDefinition
)
$session = New-PSSession -ComputerName $ComputerName
Invoke-Command -Session $session -ScriptBlock {
$latestbuildfolder = Get-ChildItem "C:\procmon\procmonBuilds\$BuildDefinition" | Sort-Object LastWriteTime -Descending | SELECT-Object -First 1
$deploycmdlocation = "\procmon\procmonWebProject\$Configuration\_PublishedWebsites\procmonWebProject_Package\procmonWebProject.zip"
$finalstring = $latestbuildfolder.FullName + $deploycmdlocation
$finalstring
}
Remove-PSSession $session
我已經嘗試了很多選擇,至今仍然沒有運氣。
否更改結果相同。它追加了$ a,但沒有列出Get-Childitem,並且$ b始終爲空,即使它在腳本內部可訪問。 – Mitul
@Mitul對不起,現在試試。我通過了worng變量。 –
這沒關係我在嘗試之前糾正了,但同樣的事情。我認爲在Path中傳遞的參數有一些問題。 – Mitul