Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

batch befehl: kopieren in neuen ordner

jürgolus / 9 Antworten / Baumansicht Nickles

hi, wie lautet der bat befehl für folgende situation:
ich möchte einen ordner erstellen und dann aus dem verzeichnis der bat datei (variiert) dateien in den neuen ordner kopieren.
mkdir "C:\data"
copy "%cd%\Data\" "C:\data" /s
so geht es ja nicht weil er dann von dem ordner c:\data als %cd% ausgeht.
ist der zusatz /s richtig, wenn ich unterordner mitkopieren will?

ach ja anbei noch: wie ist der befehl zum löschen eines autostart eintrags, der nicht im autostart ordner ist?
danke jürgen

bei Antwort benachrichtigen
peterson jürgolus „batch befehl: kopieren in neuen ordner“
Optionen

Zuerst mußt Du ins Laufwerk C: wechseln.

C:

dann

md data

~~~~~~~~~~~~~~~~~
oder

md c:\data


Und zum Kopieren nimmst Du Xcopy

Mit xcopy /? bekommst Du alles Parameter.

bei Antwort benachrichtigen
maestro0812 jürgolus „batch befehl: kopieren in neuen ordner“
Optionen
der nicht im autostart ordner ist?
Einen einzigen "Befehl" dafür gibt es nicht. Autostarteinträge gibt es unter Windows an vielen verschiedenen Stellen. Deaktivieren kannst Du einzelne Einträge bequem mit dem Systemkonfigurationsprogramm von Windows (msconfig).
bei Antwort benachrichtigen
jürgolus maestro0812 „ Einen einzigen Befehl dafür gibt es nicht. Autostarteinträge gibt es unter...“
Optionen

das hab ich jetzt noch nicht so richtig verstanden.
wieso in laufwerk c?
md ist doch move directory oder?
also wie gesagt, ich möchte die dateien aus dem ordner data, der im verzeichnis der bat liegt, in den ordner c:\data kopieren.

an den meister:
also ich meine konkret die stelle
hkey local machine-software-microsoft-windows-current version-run
was für welche gibt es denn noch?
zum hinzufügen ist ja der befehl
"reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\ /v AUTOSTARTEINTRAG /d DATEIVERZEICHNIS"
ich brauch halt das gegenteil, aber mit del, delete, remove geht es nicht.

bei Antwort benachrichtigen
peterson jürgolus „das hab ich jetzt noch nicht so richtig verstanden. wieso in laufwerk c? md ist...“
Optionen

also wie gesagt, ich möchte die dateien aus dem ordner data, der im verzeichnis der bat liegt, in den ordner c:\data kopieren

Xcopy *.* c:\data\*.*


(MD ist MakeDir)

bei Antwort benachrichtigen
maestro0812 jürgolus „das hab ich jetzt noch nicht so richtig verstanden. wieso in laufwerk c? md ist...“
Optionen

guckst Du hier

und hier

lg
maestro

bei Antwort benachrichtigen
jürgolus maestro0812 „guckst Du hier und hier lg maestro“
Optionen

ok das mit dem autostart löschen hat geklappt.
aber beim kopieren steh ich irgendwie noch auf dem schlauch.
ich bin mir auch nicht sicher ob du das richtig verstanden hast.
das problem ist nicht das kopieren, sondern das verzeichnis.
wenn ich zuerst einen ordner erstelle (egal wo) arbeitet die batch datei ja in diesem ordner weiter, und nicht im mordner der batch.
also funktioniert der befehl %cd% nicht mehr.
wie kann man das beheben ohne das verzeichnis der batch anzugeben(denn dieses ist variabel)?

bei Antwort benachrichtigen
maestro0812 jürgolus „ok das mit dem autostart löschen hat geklappt. aber beim kopieren steh ich...“
Optionen
ich bin mir auch nicht sicher ob du das richtig verstanden hast.
Zum Thema kopieren habe ich doch noch nichts gesagt.

ohne das verzeichnis der batch anzugeben(denn dieses ist variabel)?
Deine Batch-Datei könnte so aussehen:

md c:\data
cd /D %~d0%~p0
xcopy *.* c:\data /e

xcopy noch mit den gewünschten Parametern versehen (verhalten bei schon vorhandenen Dateien, etc.)

lg
maestro


bei Antwort benachrichtigen
jürgolus maestro0812 „ Zum Thema kopieren habe ich doch noch nichts gesagt. Deine Batch-Datei könnte...“
Optionen

ok gut, jetzt habs sogar ich verstanden ;) danke

bei Antwort benachrichtigen
maestro0812 jürgolus „ok gut, jetzt habs sogar ich verstanden danke“
Optionen

immer gerne.

bei Antwort benachrichtigen