datei kopieren - egal von wo aus...
hallo,
ich brauche ein batch, das mir eine datei von einem beliebigen ort aus, zb. usb stick, desktop....immer in das gleiche verzeichnis kopiert...
beispiel für normal:
COPY [Pfad]\Datei.ext [Pfad]\[Datei.ext]
Beispiel: COPY c:\test\datei.exe a:\datei.exe
ich brauche es so:
COPY Datei.ext [Pfad]\[Datei.ext]
Beispiel: COPY datei.exe a:\datei.exe
wie kann man das anstellen?
Antwort schreiben
Antwort 1 von son_quatsch vom 17.06.2020, 08:46 Options
COPY funktioniert auch, wenn du als zweiten Parameter nur das Verzeichnis angibst ohne Dateinamen:
COPY datei.exe c:\test
Ist es das, was du gesucht hast?
Antwort 2 von ralfb vom 17.06.2020, 09:21 Options
mach ne Batch mit Parameterübergabe
Bsp. CopyX.bat
ich würde xcopy benutzen, dann kannst Du auch Ordner kopieren
-----------
@echo off
xcopy %1 [Zielpfad]
-------
einfach im Windowsordner ablegen
über Konsole in den Quellordner wechseln
> eingeben "copyx [Dateiname]"
interessant wäre auch Zielordner als Verknüpfung in
X:\Dokumente und Einstellungen\user\SendTo
> rechter Mausklick auf zu kopierendes Objekt ...senden an
da kommt nur leider keine Erledigungsmeldung
mfg Ralf
Antwort 5 von renell vom 17.06.2020, 09:44 Options
nein...genau andersrum brauche ich es....
script und datei liegen immer zusammen in einem ordner....und müssen von usb-stick, oder hdd kopiert werden können
Antwort 6 von Teerbaby vom 17.06.2020, 09:52 Options
Zitat:
nein...genau andersrum brauche ich es....
script und datei liegen immer zusammen in einem ordner....und müssen von usb-stick, oder hdd kopiert werden können
Kannst du mal Beispiele nennen? Ist mir jetzt nicht wirklich klar, was du genau willst.
Antwort 7 von Arno_Nym vom 17.06.2020, 09:53 Options
Dann ist doch dein erster Versuch eigentlich schon richtig.
Um sicherzugehen, kann man ja noch das Verzeichnis des aufrufenden Batchscriptes angeben. Dies macht die Variable
%~dp0COPY [b]"%~dp0[/b]datei.exe" a:\datei.exe
Hinweis: %~dp0 enthält schon den abschließenden Backslash.
Arno
Antwort 8 von son_quatsch vom 17.06.2020, 09:54 Options
Dann hast du die Antwort schon in deiner Frage selbst gegeben:
Zitat:
COPY Datei.ext [Pfad]\[Datei.ext]
Beispiel: COPY datei.exe a:\datei.exe
Wenn das Skript immer an derselben Stelle wie die zu kopierende Datei ist - dann einfach Doppelklick und
datei.exe (egal von wo) wird immer nach
a:\ kopiert...
Antwort 9 von ralfb vom 17.06.2020, 10:04 Options
...ich verstehe nicht wo das Problem sein könnte
Wenn ich mich nicht irre funktionieren meine Tips aus AW2 von überall aus ..wenn die Batch im Windowsordner liegt wird sie immer gefunden und "senden an" macht auch kein Problem.
Falls Du dieses Sript/Batch an verschiedenen Rechner ausführen willst kannst du die Batchdatei auch vom Stick aus ausführen.
Ralf
Antwort 10 von renell vom 17.06.2020, 10:06 Options
mit %~dp0 davor geht es nicht....
dann kommt ne meldung:
Das System kann den angegebenen Pfad nicht finden.
0 Datei(en) kopiert.
ich muss z.b. immer eine aktuelle datei ins windows verzeichnis kopieren.
der zielpfad ist immer der selbe...das ist nicht das problem.
das problem ist der quellpfad...denn der ändert sich beim benutzen des scripts auf anderen rechnern...
z.b. hat ein usb stick nicht auf jedem rechner den gleichen laufwerksbuchstaben.
und wenn ich meine datei erst vom usb stick auf den desktop kopiere muss das script auch immer funktionieren.
also - egal wo die quell-datei sich befindet, das script muss immer funktionieren, ohne es noch anpassen zu müssen an den quellpfad...
oje....ich hoffe ihr versteht mich...
Antwort 11 von Jaja vom 17.06.2020, 10:10 Options
ja dann speichee deine batch doch mit auf dem usb stick und nicht im win verzeichnis und nutze den code
COPY Datei.ext [Pfad]\[Datei.ext]
evtl. dann auch mit xcopy.
Antwort 12 von Arno_Nym vom 17.06.2020, 10:10 Options
Äh, welches Betriebssystem?
%~dp0 geht nur bei NT-Systemen (NT, Win2000, XP, ...).
Arno
Antwort 13 von Teerbaby vom 17.06.2020, 10:11 Options
wenn die Batch nicht im gleichen Verzeichnis wie die Quelldatei liegt und du auch keine Parameter übergeben willst, hast du ein Problem.
Dann müsste die Datei ja erstmal gesucht werden.
Antwort 14 von Arno_Nym vom 17.06.2020, 10:17 Options
Tipp zum Testen/Fehlersuche:
echo COPY "%~dp0datei.exe" a:\datei.exe
pause
Dann kann man sich den Befehl, der ausgeführt würde, in Ruhe ansehen und evtl. Fehler besser entdecken.
Arno
Antwort 15 von renell vom 17.06.2020, 10:21 Options
ich habe jetzt die datei und die batch auf dem desktop....er findet aber die datei nicht...ohne pfadangabe....
so soll es sein:xcopy "meldung.txt" "C:\WINDOWS\system32\" /s /d /y
wenn ich es so eingebe geht es...
xcopy "C:\Dokumente und Einstellungen\renell\Desktop\meldung.txt" "C:\WINDOWS\system32\" /s /d /y
aber das soll ja nicht nur vom desktop starten, sondern aus jedem beliebigen quellpfad...
Antwort 16 von Jaja vom 17.06.2020, 10:26 Options
schau mal
hier. diese variablen kannst du in deiner batch benutzen, ich denke %CD% wirds bringen, also:
xcopy %CD%"meldung.txt" "C:\WINDOWS\system32\" /s /d /y
Antwort 17 von son_quatsch vom 17.06.2020, 10:26 Options
Erstelle folgende Datei und speichere sie als TEST.CMD ab:
Zitat:
cd
dir /b meldung.txt
xcopy "meldung.txt" "C:\WINDOWS\system32\" /s /d /y
Jetzt doppelklicken und anschließend sagen, was sie ausgibt.
Antwort 18 von Arno_Nym vom 17.06.2020, 11:41 Options
@son_quatsch
Da wird er wohl nicht viel erkennen... 'ne Pause wäre angebracht ;o)
@renell
Oder mein Vorschlag für den Inhalt der Test-Batch:
@echo off
echo xcopy "%~dp0meldung.txt" "C:\WINDOWS\system32\" /s /d /y
echo. & pause
Was gibt er aus?
Arno
Antwort 19 von renell vom 17.06.2020, 11:55 Options
@ antwort 16
ergebnis bei:
xcopy %CD%\meldung.txt" "C:\WINDOWS\system32\drivers\etc\ /s /d /y
Unzulässige Parameteranzahl-------------------------------------------------------
@ antwort 17
C:\Dokumente und Einstellungen\renell\Desktop>cd
C:\Dokumente und Einstellungen\landgraf\Desktop
C:\Dokumente und Einstellungen\renell\Desktop>dir /b meldung.txt
meldung.txt
C:\Dokumente und Einstellungen\renell\Desktop>xcopy "meldung.txt" "C:\WINDOWS\system32\" /s /d /y
Antwort 20 von renell vom 17.06.2020, 11:59 Options
@ antwort 19
das funktioniert...
es muss aber auch mit dateien funktionieren, die keine endung haben wie z.b. die hosts datei....