我想将文件从F:
上的一个文件夹复制到远程计算机上的H:
。我编写了以下脚本,但不起作用,尝试列出所有文件,但出现以下错误:
Create-Credentials:术语“ Create-Credentials”不能识别为cmdlet,函数,脚本文件或可运行程序的名称。检查
例如:
我的远程服务器是143.56.23.99
用户名:jyoti
密码:Test123#
源文件:F:\ SourceFolder \
目的地:H:\ Destination \
[CmdletBinding()]
Param(
[Parameter(Mandatory=$True)] [string] $Computer,
[Parameter(Mandatory=$True)] [string] $Path,
[Parameter(Mandatory=$True)] [string] $Destination,
[Parameter(Mandatory=$True)] [string] $Username,
[Parameter(Mandatory=$True)] [string] $Password,
[Parameter(Mandatory=$False)] [PSCredential] $Credential
)
if($UserName -and $Password) {
$Credential = Create-Credentials -Username $Username -Password $Password
} elseif(-not ($Credential)) {
throw("Unable to authenticate. A username and password or pscredentials must be provided.")
}
$Items = (Get-ChildItem $Path).FullName
$NetworkLocation = Join-Path -Path "\\$Computer" -ChildPath ($Destination.Replace(':', '$'))
foreach ($Item in $Items) {
Write-Host "------------>$Item"
}
答案 0 :(得分:1)
我建议您阅读using Credentials,因为它可以帮助您了解代码的动态。
Create-Credentials
不是本机的Powershell cmdlet,请返回您从中获取代码的位置并获取该功能。
或者删除该功能并使用本机Powershell代码。
替换:
$Credential = Create-Credentials -Username $Username -Password $Password
具有:
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $Username,($Password | ConvertTo-SecureString -AsPlainText -Force)