online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon renell vom 17.06.2020, 08:37 Options

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 3 von Teerbaby vom 17.06.2020, 09:21 Options

oder eben
copy %1 c:\xyz

Antwort 4 von Teerbaby vom 17.06.2020, 09:22 Options

Ralf war schneller ;)

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 %~dp0

COPY [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....

Ähnliche Themen

Videos aus ZDF-Mediathek downloaden
paedda1  08.11.2009 - 133730 Hits - 16 Antworten

Bezüge beim Kopieren eines Blattes in eine andere Datei
rheym  23.06.2008 - 53 Hits - 2 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026