Wie kopiere ich Dateien mit cmd auf einen benannten USB-Stick?

Wie kopiere ich Dateien mit cmd auf einen benannten USB-Stick?

Ich möchte c:\test\myphoto.jpg nach F: kopieren, wenn der Name der Festplatte F: von cmd „Rejepow“ lautet.

Wie kann ich es tun?

Wenn es per cmd nicht möglich ist, könnten Sie erklären, wie es in C++ geht?

Aus dem Kommentar von OP:

Ich habe es durch Entfernen versucht @echo off, außerdem habe ich geändert If[%%d]==[F:] to If[%%d]==[G:].

Die Ausgabe wmic logicaldisk get caption, volumenamelautet:

C: 
D: 
E: 
G: REJEPOW

Antwort1

Ich möchte c:\test\myphoto.jpg nach F: kopieren, wenn der Name der Festplatte F: „Rejepow“ ist.

Lösung 1:

Verwenden Sie die folgende Batchdatei (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

Lösung 2:

Verwenden Sie die folgende Befehlszeile.

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

Anmerkungen:

  • In Ihrer Frage wird ausdrücklich angegeben, dass nur kopiert werden soll, wenn es sich um Laufwerk F: handelt.
  • In der Annahme, dass es sich um einen Fehler handelt, habe ich die Antwort so geändert, dass die Datei auf alle Datenträger mit der Bezeichnung „REJEPOW“ (was nicht die Schreibweise ist, die Sie in Ihrer Frage angegeben haben) kopiert wird.

Weitere Informationen

  • Ein AZ-Index der Windows CMD-Befehlszeile- Ein hervorragendes Nachschlagewerk zu allem, was mit der Windows-Eingabeaufforderung zu tun hat.
  • Kopieren- Kopieren Sie eine oder mehrere Dateien an einen anderen Speicherort.
  • wmic- Befehl der Windows-Verwaltungsinstrumentation.
  • für /f- Befehl mit den Ergebnissen eines anderen Befehls wiederholen.

Antwort2

Ich habe Ihren Batchcode ausprobiert, aber er hat nicht funktioniert, obwohl Ihre Befehlszeilenantwort richtig war, und raten Sie mal, was ich getan habe;) Ich habe ein C++-Programm geschrieben, das Ihre Befehlszeile ausführt.

#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;
}

verwandte Informationen