usar script que instrucciones como comandos active powershell powercli copy-item

script - ¿Necesita ayuda en el elemento de copia Powershell de las unidades de red



que es window powershell (2)

Estoy tratando de usar Copy-Item desde la máquina remota a otra máquina remota con el comando:

Copy-Item -Path "//machine1/abc/123/log 1.zip" -Destination "//machine2//c$/Logs/"

Recibo constantemente el error " Cannot find Path "//machine1/abc/123/log 1.zip "

Puedo acceder a ese camino y copiar manualmente desde allí.

Estoy abriendo PowerCLI como administrador y ejecutando este script ... Estoy absolutamente atascado aquí y no estoy seguro de cómo resolverlo.


Esto parece funcionar como está en PowerShell v3. No tengo v2 a mano para probar, pero hay dos opciones que conozco, que deberían funcionar. Primero, podrías mapear PSDrives:

New-PSDrive -Name source -PSProvider FileSystem -Root //machine1/abc/123 | Out-Null New-PSDrive -Name target -PSProvider FileSystem -Root //machine2/c$/Logs | Out-Null Copy-Item -Path source:/log_1.zip -Destination target: Remove-PSDrive source Remove-PSDrive target

Si esto es algo que vas a hacer mucho, incluso podrías envolver esto en una función:

Function Copy-ItemUNC($SourcePath, $TargetPath, $FileName) { New-PSDrive -Name source -PSProvider FileSystem -Root $SourcePath | Out-Null New-PSDrive -Name target -PSProvider FileSystem -Root $TargetPath | Out-Null Copy-Item -Path source:/$FileName -Destination target: Remove-PSDrive source Remove-PSDrive target }

Alternativamente, puede especificar explícitamente el proveedor con cada ruta:

Copy-Item -Path "Microsoft.PowerShell.Core/FileSystem:://machine1/abc/123/log 1.zip" -Destination "Microsoft.PowerShell.Core/FileSystem:://machine2//c$/Logs/"


esto funciona todo el día para mí:

$strLFpath = "//compname/e$/folder" $strLFpath2 = "//Remotecomputer/networkshare/remotefolder" #this is a second option that also will work $StrRLPath = "E:/localfolder" Copy-Item -Path "$StrRLPath/*" -Destination "$strLFpath" -Recurse -force -Verbose

cosas para ver: Copiar-elemento define el ÚLTIMO elemento como el objeto. para copiar el contenido de una carpeta, NECESITA la / *

Si está copiando la carpeta en una nueva ubicación, no necesita declarar el contenido.