Newbie in Sachen Batch - einfache Rename-Datei
[Edit]Status auf Gelöst gesetzt. Biber [/Edit]
Hallo allerseits,
bin neu hier und auch in Sachen Batch ein totaler Anfänger.... was ich bräuchte, ist eine (für Eure Verhältnisse wahrscheinlich ganz ordinäre) rename Datei.
Folgende Problematik: Zwei Software-Anbieter haben sich dooferweise den selben Verschlüsselungsdienst gekauft - ergo gibt es Probs für all jene, die beide Softwareprodukte nutzen.
Das Problem liegt in zwei dll-Dateien. Also bräuchte man eine Batch-Datei, die ein Rename im hin-und-her-Verfahren ausführt umbenennen - bei erneuter Betätigung wieder zurückbenennen), damit man sich das rumwühlen im Windows-Verzeichnis sparen kann, zumal das für Anfänger (und erstrecht für den Admin
)mal sowieso der Graus ist.
besagte Dateien liegen im Verzeichnis: c:/Windows/system32
Ich hab das mal probiert aufgrund eines anderen Beitrages hier und versucht etwas zusammenzuschustern - bitte lacht mich nicht aus - bin echt voller Neuling:
if exist HL_MED32.dll ren HL_MED32.dll DB_HL_MED32.dll
if exist HLSoft32.dll ren HLSoft32.dll DB_HLSoft32.dll
if exist DB_HLSoft32.dll ren DB_HLSoft32.dll HLSoft32.dll
if exist DB_HL_MED32.dll ren DB_HL_MED32.dll HL_MED32.dll
keine Ahnung, ob da ansatzweise was richtig ist ?! Die Frage ist, wie lege ich die Datei an (reicht das wirklich im Editor, als .bat speichern und Verknüpfung der bat-Datei aufs Desktop ? Was muß da sonst noch an Befehlen/Hinweisen rein, damit das Ding funzt ?
Besten Dank im voraus !
LG, Lexxy
Hallo allerseits,
bin neu hier und auch in Sachen Batch ein totaler Anfänger.... was ich bräuchte, ist eine (für Eure Verhältnisse wahrscheinlich ganz ordinäre) rename Datei.
Folgende Problematik: Zwei Software-Anbieter haben sich dooferweise den selben Verschlüsselungsdienst gekauft - ergo gibt es Probs für all jene, die beide Softwareprodukte nutzen.
Das Problem liegt in zwei dll-Dateien. Also bräuchte man eine Batch-Datei, die ein Rename im hin-und-her-Verfahren ausführt umbenennen - bei erneuter Betätigung wieder zurückbenennen), damit man sich das rumwühlen im Windows-Verzeichnis sparen kann, zumal das für Anfänger (und erstrecht für den Admin
besagte Dateien liegen im Verzeichnis: c:/Windows/system32
Ich hab das mal probiert aufgrund eines anderen Beitrages hier und versucht etwas zusammenzuschustern - bitte lacht mich nicht aus - bin echt voller Neuling:
if exist HL_MED32.dll ren HL_MED32.dll DB_HL_MED32.dll
if exist HLSoft32.dll ren HLSoft32.dll DB_HLSoft32.dll
if exist DB_HLSoft32.dll ren DB_HLSoft32.dll HLSoft32.dll
if exist DB_HL_MED32.dll ren DB_HL_MED32.dll HL_MED32.dll
keine Ahnung, ob da ansatzweise was richtig ist ?! Die Frage ist, wie lege ich die Datei an (reicht das wirklich im Editor, als .bat speichern und Verknüpfung der bat-Datei aufs Desktop ? Was muß da sonst noch an Befehlen/Hinweisen rein, damit das Ding funzt ?
Besten Dank im voraus !
LG, Lexxy
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 24621
Url: https://administrator.de/forum/newbie-in-sachen-batch-einfache-rename-datei-24621.html
Ausgedruckt am: 26.04.2025 um 19:04 Uhr
2 Kommentare
Neuester Kommentar
Hi Lexxy,
die Syntax würde schon mal passen. Nur hat Du eines übersehen:
Deine 1. Zeile benennt die Datei HL_MED32.dll in DB_HL_MED32.dll um.
Wenn aber dann die 4. Zeile ausgefüphrt wird, wird eben diese Datei wieder zurück umbenannt.
Du musst über je eine temporäre Datei gehen.
Ich hab Dir mal ein entsprechnendes Script geschrieben, allerdings mit etwas übersichtlicheren Dateinamen. Du kannst das dann ja anpassen.
Das Überprüfen ob die Datei jeweils da ist, kann ausbleiben, denn es sind ja wohl immer beide (Namens-)Versionen beider Dateien vorhanden.
Im Schritt 1 wird die gerade "inaktive Datei" in eine "temporäte Datei" umbenannt.
Schritt 2 benennt die "aktive Datei" in die (jetzt ja nicht mehr vorhandene) "inaktive Datei" um.
Im Anschluss wird die "temporäre Datei" wieder zur "aktiven Datei" umbenannt.
Allerdings ... in der Form weiss der User dann halt nie, welcher Satz der Dateien gerade aktiv ist.
Und ... soweit ich das verstanden habe, greift der Rechner auf die DLL auf der Platte nur dann zu, wenn sie nicht mehr im Speicher geladen ist. Allerdings werden nicht immer alle DLLs auch beim Beenden eines Programm gleich entladen. Das heisst, wenn der User "umschalten" will, kann trotzdem noch die dann falsche DLL im Speicher aktiv sein.
Ich kann mich da aber auch irren, das kann Dir ein Programmierer besser sagen.
Und ja, eine Batch-Datei ist eine reine Text-Datei die Du mit jedem Editor erstellen kannst.
Unter Windows ab NT oder neuer kann man Batch-Dateiein auch die Endung .cmd geben. Diese funktionieren dann aber nicht unter DOS oder Win9X mit dieser Endung.
Ich ziehe diese Endung aber vor, einfach um schon am Namen zu sehen, dass es eine Batchdatei für eben diese Systeme ist.
Gruss,
Thomas
die Syntax würde schon mal passen. Nur hat Du eines übersehen:
Deine 1. Zeile benennt die Datei HL_MED32.dll in DB_HL_MED32.dll um.
Wenn aber dann die 4. Zeile ausgefüphrt wird, wird eben diese Datei wieder zurück umbenannt.
Du musst über je eine temporäre Datei gehen.
Ich hab Dir mal ein entsprechnendes Script geschrieben, allerdings mit etwas übersichtlicheren Dateinamen. Du kannst das dann ja anpassen.
ren C:\Datei1_bak.txt Datei1_temp.txt
ren C:\Datei2_bak.txt Datei2_temp.txt
ren C:\Datei1.txt Datei1_bak.txt
ren C:\Datei2.txt Datei2_bak.txt
ren C:\Datei1_temp.txt Datei1.txt
ren C:\Datei2_temp.txt Datei2.txt
Das Überprüfen ob die Datei jeweils da ist, kann ausbleiben, denn es sind ja wohl immer beide (Namens-)Versionen beider Dateien vorhanden.
Im Schritt 1 wird die gerade "inaktive Datei" in eine "temporäte Datei" umbenannt.
Schritt 2 benennt die "aktive Datei" in die (jetzt ja nicht mehr vorhandene) "inaktive Datei" um.
Im Anschluss wird die "temporäre Datei" wieder zur "aktiven Datei" umbenannt.
Allerdings ... in der Form weiss der User dann halt nie, welcher Satz der Dateien gerade aktiv ist.
Und ... soweit ich das verstanden habe, greift der Rechner auf die DLL auf der Platte nur dann zu, wenn sie nicht mehr im Speicher geladen ist. Allerdings werden nicht immer alle DLLs auch beim Beenden eines Programm gleich entladen. Das heisst, wenn der User "umschalten" will, kann trotzdem noch die dann falsche DLL im Speicher aktiv sein.
Ich kann mich da aber auch irren, das kann Dir ein Programmierer besser sagen.
Und ja, eine Batch-Datei ist eine reine Text-Datei die Du mit jedem Editor erstellen kannst.
Unter Windows ab NT oder neuer kann man Batch-Dateiein auch die Endung .cmd geben. Diese funktionieren dann aber nicht unter DOS oder Win9X mit dieser Endung.
Ich ziehe diese Endung aber vor, einfach um schon am Namen zu sehen, dass es eine Batchdatei für eben diese Systeme ist.
Gruss,
Thomas