Copie varios archivos con Powershell

0

¿Cómo puedo copiar todos los archivos de tipo: docx de todos los directorios en e incluyendo, por ejemplo, D: \ Doc_Source, al destino E: \ Doc_Destination, en lotes de, por ejemplo, 500, y solo cuando no queda ninguno en E: \ Doc_Destination, excepto si tienen una cadena 'somestring' en el nombre del archivo ..?

Yo realmente agradecería cualquier ayuda que voy a conseguir en esto - Estoy muy nuevo en PowerShell y gracias de antemano.

vixbix
fuente

Respuestas:

0

excepto si tienen una cadena 'somestring' en el nombre del archivo ..?

Supongo que desea excluir según el nombre del archivo, si es así, cambie $ exclude = "text" para que sea igual a lo que desea excluir.

$source="D:\Doc_Source"
$dest="E:\Doc_Destination"
$ext="*.docx"
$exclude="text"

$files = Get-ChildItem -recurse $source -Filter $ext | Where-Object {$_.Name -NotMatch $exclude}

ForEach ($file in $files) {
    Copy-Item -Path $file.Fullname -Destination $dest -Force 
}
CML
fuente
Me acabo de dar cuenta de que me perdí la parte de los lotes, esto copiará todos los archivos a la vez. Te responderé sobre eso.
CML
¿Estás buscando copiar 500 y luego pausar?
CML
Supongo que COMPRUEBE si el DESTINO tiene CERO, luego COPIE 500 y PAUSA, y COMPRUEBE si el
DESTINO
¿Alguien más capaz de agregar al trabajo CML comenzó?
vixbix