Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Per Batch Datei kopieren - aber wenn im Zielpfad bereits vorhanden nicht überschreiben sondern umbenennen

Frage Entwicklung Batch & Shell

Mitglied: royal

royal (Level 1) - Jetzt verbinden

14.05.2009, aktualisiert 09:33 Uhr, 20604 Aufrufe, 5 Kommentare

Hallo zusammen,

ich weis, dass diese Frage so ähnlich schon öfters gestellt wurde aber ich tus trotzdem nochmal

Ich hab folgendes Problem:
Ich will in einer einfachen Batch-Datei die derzeit so aussieht

@ECHO ON
move c:\test\test2\protokoll_* c:\test4\

copy c:\test4\protokoll_* n:\test5\


eine Datei verschieben und kopieren die immer gleich lautet aber beim Verschiebe-/Kopiervorgang
soll diese Datei NUN wenn Sie bereits existent ist nicht überschrieben werden sondern evtl. umbenannt werden und auch im gleichen Verzeichnis abgelegt werden.

Ich hoffe es kann mir jemand helfen.
Danke schon man im Vriaus

Gruß
royal
Mitglied: chrdohmen
14.05.2009 um 09:57 Uhr
Hallo,

mit folgenden Befehlen kannst du prüfen ob eine Datei existiert

if exist [Dateiname] [auszuführendes Kommando, wenn Datei existiert]
if NOT exist [Dateiname] [auszuführendes Kommando, wenn Datei nicht existiert]

du könntest dann z.B. ein goto einbauen
if exist %1 goto existiert
if NOT exist %1 goto existiertnich

und dort führst du ein rename durch
ren [dateiname] "[neuerdateiname]"

Gruß
Christian
Bitte warten ..
Mitglied: Destry
14.05.2009 um 10:05 Uhr
Hallo royal,

so kann's gehen:

@ECHO ON
if exist c:\test\test4\protokoll_* (move c:\test\test2\protokoll_* c:\test4\protokoll_EIGENER_NAME.ERWEITERUNG) else (move c:\test\test2\protokoll_* c:\test4\)

copy c:\test4\protokoll_* n:\test5\


Die Begriffe EIGENER_NAME und ERWEITERUNG musst Du selber füllen.
Wenn möglich würde ich lieber den exakten Dateinamen abfragen und auf den Stern in der Abfrage verzichten.
Eventuell musst Du die Befehle noch in Hochkommatas stellen, wenn der Pfad oder der Dateiname Leer- oder Sonderzeichen enthält.

Gruss,
Destry
Bitte warten ..
Mitglied: LotPings
14.05.2009 um 10:11 Uhr
Zitat von chrdohmen:

Hallo Christian

if exist [Dateiname] [auszuführendes Kommando, wenn Datei
existiert]
if NOT exist [Dateiname] [auszuführendes Kommando, wenn Datei
nicht existiert]

Dann bitte besser:
01.
if exist Dateiname ( 
02.
echo auszuführendes Kommando, wenn Datei existiert 
03.
) Else ( 
04.
echo auszuführendes Kommando, wenn Datei nicht existiert 
05.
)
du könntest dann z.B. ein goto einbauen
if exist %1 goto existiert
if NOT exist %1 goto existiertnich

und dort führst du ein rename durch
ren [dateiname] "[neuerdateiname]"

In Batch muss man nicht unbedingt Spaghetti Code produzieren,
es geht auch strukturierter mit Call :sub und Klammern.

Gruß
LotPings

PS: Schau dir doch bitte mal die Formatierungshilfe an.
Bitte warten ..
Mitglied: chrdohmen
14.05.2009 um 16:27 Uhr
Hallo LotPings,

wenn es sich um nicht mehr handel wie royal beschrieben kann er durchweg ein goto verwenden.
Denn sein ganzer Code beschränkt sich vielleicht auf 10 Zeilen.

Klar wenn es mehr wird sollte man kein goto mehr verwenden wegen der Übersichtlichkeit.

Sorry, wegen der fehlenden Formatierung

Gruß
Christian
Bitte warten ..
Mitglied: royal
14.05.2009 um 16:46 Uhr
hallo leute,

das ging ja fix. danke klappt genau so wie ich das wollte!

gruß
royal
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Batch Datei Kopieren (17)

Frage von Frager zum Thema Batch & Shell ...

Batch & Shell
gelöst Ordner per Batch verschieben, Datei kopieren (2)

Frage von Shape.Shifter zum Thema Batch & Shell ...

Entwicklung
gelöst Verzeichnise sichern mit batch datei (Win10) (13)

Frage von Limbach zum Thema Entwicklung ...

Batch & Shell
gelöst Dateinamen mit Batch-Datei ändern - Problem (9)

Frage von fffffuuuuuuuhhhh zum Thema Batch & Shell ...

Neue Wissensbeiträge
Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Router & Routing

PfSense auf Supermicro Intel Xeon D-15x8 SoC Bare Bone

Tipp von Dobby zum Thema Router & Routing ...

Windows Server

Exchange 2010 auf Windows Server 2016 und AD

(2)

Tipp von Herbrich19 zum Thema Windows Server ...

KVM

How to: Libvirt Port forwarding

(2)

Anleitung von fundave3 zum Thema KVM ...

Heiß diskutierte Inhalte
Router & Routing
über Vmware auf eine FritzBox mit IPv6 per VPN (17)

Frage von Zockervogel zum Thema Router & Routing ...

Basic
Programmierung von Windows Programmen (9)

Frage von Ghost108 zum Thema Basic ...

Voice over IP
VoIP und DECT an Fritz Accesspoint (7)

Frage von Katosix zum Thema Voice over IP ...