Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Batchdatei zum Kopieren von Verzeichnissen bzw. Ordnern verbessern...

Frage Entwicklung Batch & Shell

Mitglied: pschsch

pschsch (Level 1) - Jetzt verbinden

19.07.2007, aktualisiert 23.07.2007, 5205 Aufrufe, 6 Kommentare

Hinzufügen von Variablen

Ich benutze folgende Batchdatei zum Kopieren von Ordnern, die ich auf CMD- (veraltet: DOS-) Ebene aufrufe:

if "%1"=="" goto fehler

for %%c in (r1pc01 r1pc02 r1pc03) do md X:\Schueler\EDVRaum1\%%c\%1
for %%c in (r1pc01 r1pc02 r1pc03) do xcopy %1 X:\Schueler\EDVRaum1\%%c\%1 /s/e/v
goto ende

:fehler
cls
echo Verzeichnisname wurde nicht eingegeben!

:ende
pause

Die Datei funktioniert nur dann, wenn sich die Batchdatei im selben Ordner wie das zu kopierende Verzeichnis befindet.

Gibt es eine Möglichkeit, von dem Speicherort der Batchdatei aus Quellordner und Zielordner separat einzugeben, so dass ich die Datei nicht immer umkopieren muss?

Kennt jemand ein Programm oder Skript, das diese Aufgabenstellung erledigt? (Bei Dateien arbeite ich mit WiNAss.exe von ALP Dillingen.)
Mitglied: bastla
19.07.2007 um 11:49 Uhr
Hallo pschsch!

Du könntest für den Ordner beim Aufruf (auch zB per Drag&Drop auf die Batchdatei) den vollen Pfad übergeben und den (letzten!) Ordnernamen mit %~n1 (anstatt %1) isolieren (ist eigentlich für Dateien gedacht, aber für MS ist in diesem Fall alles, was nach dem letzten "\" steht eine "Datei").

Grüße
bastla
Bitte warten ..
Mitglied: Biber
19.07.2007 um 13:18 Uhr
Moin pschpsch,

Du bist in besten Händen, deshalb nur OffTopic als Fussnote:
  • Dein Beitrag gehört nach "Batch & Shell" und nicht nach "Windows". Ich verschiebe ihn.
  • STREICHE: "die ich auf DOS-Ebene aufrufe"; SETZE "die ich auf CMD-Ebene aufrufe".

Unter DOS ließe sich die Syntax nur rudimentär verwenden.
Und hin und wieder haben wir noch Fragen, die sich (eher) auf eine DOS-Syntax beziehen - diese können das nicht abtippen, was oben steht.

Wenn Du hin und wieder im EDV am Pult stehst, solltest Du schon zwischen DOS-Prompt und CMD-Prompt unterscheiden...

Hoffe, der Groschen....äääh...das 10-Cent-Stück ist gefallen.

Grüße
Biber
Bitte warten ..
Mitglied: maneich
21.07.2007 um 16:24 Uhr
Hallo,

so wie ich das sehe, dürfte die Lösung für DOS- und CMD-Ebene die gleiche sein.

if "%1"=="" goto fehler
set x=Laufwerk:\Verzeichnispfad\

:: for %%c in (r1pc01 r1pc02 r1pc03) do md X:\Schueler\EDVRaum1\%%c\%1
for %%c in (r1pc01 r1pc02 r1pc03) do xcopy %x%%1 X:\Schueler\EDVRaum1\%%c /s/e/v
goto ende

Damit kann die Batch eigentlich von überall ausgeführt werden.

MfG maneich
Bitte warten ..
Mitglied: pschsch
23.07.2007 um 08:05 Uhr
@bastla
Habe deine überarbeitete Batchdatei ausprobiert mit "drag and drop" und hat bestens funktioniert. Vielen Dank für die wirklich tolle Hilfe!
Bitte warten ..
Mitglied: pschsch
23.07.2007 um 08:08 Uhr
@maneich
Wie muss ich jetzt "set x=Laufwerk:\Verzeichnispfad\" belegen? Kannst du's mal am Beispiel erläutern?
Bitte warten ..
Mitglied: maneich
23.07.2007 um 11:11 Uhr
Hallo,

nun ja, Du mußt hier die Adresse (Hauptverzeichnis) angeben, in der die Verzeichnisse der For-Schleife liegen.

z.B.: set x="C:\Eigene Dateien\Test\"

MfG maneich
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Verzeichniss überwachen Datei kopieren und umbenennen (6)

Frage von fischle63 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch aktuellsten Ordner kopieren (2)

Frage von MmarKuss zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch: alle Ordner mit einem bestimmten Namen kopieren (4)

Frage von Remsboys zum Thema Batch & Shell ...

Batch & Shell
gelöst Kopieren einer Datei in mehrere Ordner mit PowerShell (7)

Frage von FRANHE zum Thema Batch & Shell ...

Neue Wissensbeiträge
Sicherheit

Millionen Euro in den Sand gesetzt?

(3)

Information von transocean zum Thema Sicherheit ...

Sicherheit

How I hacked hundreds of companies through their helpdesk

Information von SeaStorm zum Thema Sicherheit ...

Heiß diskutierte Inhalte
Firewall
gelöst Firewall Firmeneimsatz (23)

Frage von wiesi200 zum Thema Firewall ...

LAN, WAN, Wireless
Eine Netzwerkdose im Wechsel für zwei unterschiedliche Netze (11)

Frage von kartoffelesser zum Thema LAN, WAN, Wireless ...

Windows Server
ESXI Free Windows Server 2016 Datacenter aktivieren (11)

Frage von iDeathz zum Thema Windows Server ...

Windows Netzwerk
Ordner-Freigabe außerhalb der Domäne (9)

Frage von Remsboys zum Thema Windows Netzwerk ...