我嘗試了很長時間將以下檔案夾復制到遠程服務器,但不幸的是總是出錯。我嘗試了很多方法:((((
我真的需要幫助
代碼:
$ServerLists = Get-Content -Path "c:\scripts\serverslist.txt"
$NewRFCName = Read-Host -Prompt 'Enter New RFC Name'
foreach ($server in $ServerLists)
{
$from = "C:\Releases\" $NewRFCName
$exchange = New-PSSession -ComputerName $server -Credential $Credential
# #######Copy the new pakage to Website folder : #######
Write-Host "server :$server \\ Copying the new pakgae to Website folder "
Invoke-Command -Session $exchange -ScriptBlock {Copy-Item $from C:\site -Recurse}
}
錯誤:
無法將引數系結到引數“路徑”,因為它為空。
uj5u.com熱心網友回復:
傳遞給的腳本塊Invoke-Command將在變數不存在的遠程機器上執行$from。
您可以通過指定using:前綴來強制 PowerShell 將其值復制到遠程會話:
$ServerLists = Get-Content -Path "c:\scripts\serverslist.txt"
$NewRFCName = Read-Host -Prompt 'Enter New RFC Name'
foreach ($server in $ServerLists) {
$from = "C:\Releases\" $NewRFCName
$exchange = New-PSSession -ComputerName $server -Credential $Credential
# #######Copy the new pakage to Website folder : #######
Write-Host "server :$server \\ Copying the new pakgae to Website folder "
Invoke-Command -Session $exchange -ScriptBlock { Copy-Item $using:from C:\site -Recurse }
}
或者通過將其作為引數顯式傳遞給遠程會話:
Invoke-Command -Session $exchange -ScriptBlock { param([string]$Path) Copy-Item $Path C:\site -Recurse } -ArgumentList $from
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/399964.html
