Como copiar arquivos para o dado usb stick nomeado com cmd?

0

Eu quero copiar c: \ test \ myphoto.jpg para F: se o nome de F: disk for "Rejepow" de cmd.

Como posso fazer isso?

Se é impossível, a partir do cmd, você poderia explicar como fazer isso em c ++?

Do comentário por OP:

Eu tentei remover @echo off , mas também mudei If[%%d]==[F:] to If[%%d]==[G:] .

A saída de wmic logicaldisk get caption, volumename é:

C: 
D: 
E: 
G: REJEPOW
    
por K.Rejepow 21.10.2016 / 18:45

2 respostas

2

Eu quero copiar c: \ test \ myphoto.jpg para F: se o nome de F: disk for "Rejepow"

Solução 1:

Use o seguinte arquivo em lote (CopyToRejepow.cmd).

@echo off
setlocal
for /f "tokens=1,2" %%d in ('wmic logicaldisk get caption^, volumename ^| findstr -i "Rejepow"') do (
  copy c:\test\myphoto.jpg %%d
  )
endlocal

Solução 2:

Use a seguinte linha de comando.

for /f "tokens=1,2" %d in ('wmic logicaldisk get caption^, volumename ^| findstr -i "Rejepow"') do copy c:\test\myphoto.jpg %d

Notas:

  • Sua pergunta especifica explicitamente para copiar somente se for a unidade F :.
  • Supondo que seja um erro, modifiquei a resposta para copiar o arquivo para cada disco denominado REJEPOW (que não é a ortografia que você deu na sua pergunta).

Leitura Adicional

por 21.10.2016 / 22:08
0

Eu tentei o seu código em lote, mas não funcionou, embora sua resposta na linha de comando fosse verdadeira e adivinhe o que eu fiz;) Eu escrevi um programa em c ++ que executa sua linha de comando.

#include <iostream>
#include <cstdlib>

using namespace std;
int main() {
system("for /f \"tokens=1,2\" %d in (\'wmic logicaldisk get caption^, volumename ^| findstr -i \"Rejepow\" \') do copy c:\test\myphoto.jpg %d);

return 0;
}
    
por 23.10.2016 / 13:57

Tags