Batch-Skript zum Kopieren von Dateien von allen verfügbaren Laufwerken auf einen USB

Batch-Skript zum Kopieren von Dateien von allen verfügbaren Laufwerken auf einen USB

Ich habe dieses Skript

    for /f "skip=1 delims=" %%x in ('wmic logicaldisk get caption') do (
    copy "%%x\*.spt" "%drive%\mydiagtools"
)
pause

und ich brauche es, um Dateien mit der Erweiterung SPT (unsere proprietären Firmendateien) von allen verfügbaren Datenträgern auf einem bestimmten Computer auf mein USB-Laufwerk zu kopieren.

Hat irgendjemand eine Idee, warum es nicht funktioniert? Dies ist die Ausgabe, die ich bekomme:

F:\>for /F "skip=1 delims=" %x in
*.spt" "\mydiagtools" )

\*.spt" "\mydiagtools" )
The device is not ready.

\*.spt" "\mydiagtools" )
\*.spt
The filename, directory name, or v
        0 file(s) copied.

\*.spt" "\mydiagtools" )
The device is not ready.

\*.spt" "\mydiagtools" )
The device is not ready.

\*.spt" "\mydiagtools" )
\*.spt
The filename, directory name, or v
        0 file(s) copied.

\*.spt" "\mydiagtools" )
\*.spt
The system cannot find the path sp
        0 file(s) copied.

\*.spt" "\mydiagtools" )
\*.spt
The filename, directory name, or v
        0 file(s) copied.

F:\>pause
Press any key to continue . . .

Vielen Dank

edit: Ausgabe korrigiert

Antwort1

möchten Sie Powershell verwenden? Bitte versuchen Sie das folgende Skript.

$copy=Get-PSDrive -PSProvider FileSystem  |  %{ Get-ChildItem $_.Root -Recurse -force  -ErrorAction SilentlyContinue| Where-Object {$_.Extension -eq '.spt'}} Copy-Item -Path $copy.Fullname -Destination  C:\xxxx\

Ändern Sie das Skript am Ende so, dass es Ihr USB-Stick ist, und führen Sie es dann als Powershell aus.

Antwort2

Der folgende Code sollte funktionieren:

for /f "skip=1" %%x in ('wmic logicaldisk get caption') do (
    copy "%%x\*.spt" "%drive%\mydiagtools"
)
pause

Obwohl %drive%es für mich keinen Wert hatte, schien das Problem damit zusammenzuhängen delims=. Ohne es konnte ich den Inhalt eines Laufwerks erfolgreich auflisten und kopieren, während es delims=einen unerwünschten Nebeneffekt verursachte, bei dem keine Dateien angezeigt oder kopiert wurden.

(getestet unter Windows 10 Enterprise x64 Version 1803 Build 10.0.17134.376)

verwandte Informationen