Como criar um USB que copie todas as fotos do PC ao qual ele está conectado, usando arquivos em lote?

-1

Eu tentei fazer isso, mas não está funcionando

:: variables
/min
SET odrive=%odrive:~0,2%
set backupcmd=xcopy /s /c /d /e /h /i /r /y
echo off

for /r C:\ %f in (*.jpg) do @copy "%drive%\all\pics"

@echo off
cls
    
por Piyush Thakur 04.02.2015 / 08:26

3 respostas

3

Eu tentei fazer isso, mas não está funcionando

Existem vários problemas com o seu arquivo de lote.

Uso de %

Você precisa usar %% em um arquivo em lotes. % é para uma linha de comando.

Uso de / min

:: variables
/min

/min - '/ min' não é reconhecido como um comando interno ou externo, programa operável ou arquivo de lote. Não tenho certeza do que você está tentando fazer com isso.

Uso de odrive

SET odrive=%odrive:~0,2%

odrive já está definido? Caso contrário, será definido como ~0,2 . Em qualquer caso, não é usado novamente.

Uso de backupcmd

set backupcmd=xcopy /s /c /d /e /h /i /r /y

Você não usa backupcmd

Uso de for

echo off

for /r C:\ %f in (*.jpg) do @copy "%drive%\all\pics"

Este não é um uso válido de for . Você precisa usar %%f não %f .

copy leva pelo menos dois parâmetros, origem e destino.

%drive% já está definido?

Tente o seguinte comando for :

for /r C:\ %%f in (*.jpg) do @copy %%f "%drive%\all\pics"

A operação do comando FOR pode ser resumida como ...

  • Take a set of data
  • Make a FOR Parameter %%G equal to some part of that data
  • Perform a command (optionally using the parameter as part of the command).
  • Repeat for each item of data

If you are using the FOR command at the command line rather than in a batch program, use just one percent sign: %G instead of %%G.

Fonte para

Leitura Adicional

por 04.02.2015 / 09:48
1

Tente o comando ROBOCOPY com a opção / MIR. Ele recursivamente procura em todas as pastas e copia apenas arquivos atualizados / novos. A estrutura do diretório de origem é recriada no destino. Uso, por exemplo,

robocopy /mir <source path> <target path>
    
por 04.02.2015 / 22:10
0

Eu sempre penso que menos é melhor. Por que não tentar o seguinte?

xcopy /c/d/e/f/h/r/y c:\*.jpg .

notas:

  • / e implica / s
  • / i desnecessário, pois o destino existe.
  • especifica apenas arquivos jpg
  • destino de "." indica o diretório atual, supondo que o arquivo bat esteja no USB.
por 08.06.2017 / 20:54