cyberdiddl
Goto Top

Erstellen einer bat datei

Hi
Ich bin erst heute auf euer board gestossen und ich finde es toll das hier so viel geholfen wird.

Hi

Da ich im umgang mit bat dateien absolut keine erfahrung habe, hoffe ich das mir hier wirklich jemand helfen kann.
Zu meinem Anliegen, ich habe da ein spiel das mit 2 Accounts läuft nun bräuchte ich eine bat datei die die verschiedenen ordner umbenennt.
Das jedes mal manuell zu ändern nervt wirklich nach einer weile, da habe ich mal gegoogelt und sehr interesante sachen gefunden, aber nichts was mir wirklich hilft.
Nun möchte ich euch bitten mir zu helfen.

Um mit 2 verschiedenen profilen zu spielen möchte ich das die bat das kann.
zb: Ich habe 2 ordner mein profil zb. Hans und für meinen kleinen Hänschen (ProfilHans & ProfilHänschen ) in C:\Programme\Spiel\ und möchte mit einer bat datei den ordner ProfilHans in Profil umbenennen Beim erneuten ausführen der bat datei soll Profil in ProfilHans geändert werden und Profil Hänschen in profil. Beim erneuten start der bat soll er das gegenteil wieder machen.
Genau das gleiche spiel muß auch unter Eigene dateien geschehen. Habe Eigene dateien auf einem anderen LW ist das schlim oder geht es auch so.

Ich habe auch mal gesehen das es bat dateien mit menü gibt da kann man auswählen zb. 1 = profilHans 2 = profilHänschen umbenennen

Ist das möglich? Bitte bitte hilfe.

Ich hoffe wirklich mir kann jemand helfen.
Herzlichen dank schon mal im voraus

Gruß
CyberDIDDL

Content-Key: 141891

Url: https://administrator.de/contentid/141891

Printed on: April 25, 2024 at 18:04 o'clock

Member: bastla
bastla May 01, 2010 at 21:02:13 (UTC)
Goto Top
Hallo CyberDIDDL und willkommen im Forum!

Das könnte (ungetestet) etwa so gehen:
@echo off & setlocal
set "Profil1=Hans"  
set "Profil2=H„nschen"  
set "Pfad1=C:\Programme\Spiel"  
set "Pfad2=D:\Users"  

if exist "%Pfad1%\%Profil1%" (  
    echo Profil derzeit: "%Profil2%"  
) else (
    echo Profil derzeit: "%Profil1%"  
)
echo\

set /p "Antwort=Profil wechseln (J/N)? "  
if /i "%Antwort:~,1%" neq "J" goto :eof  

if exist "%Pfad1%\%Profil1%" (  
    ren "%Pfad1%\Profil" "%Profil2%"  
    ren "%Pfad2%\Profil" "%Profil2%"  

    ren "%Pfad1%\%Profil1%" "Profil"  
    ren "%Pfad2%\%Profil1%" "Profil"  
) else (
    ren "%Pfad1%\Profil" "%Profil1%"  
    ren "%Pfad2%\Profil" "%Profil1%"    

    ren "%Pfad1%\%Profil2%" "Profil"  
    ren "%Pfad2%\%Profil2%" "Profil"  
)
Grüße
bastla
Member: CyberDIDDL
CyberDIDDL May 01, 2010 at 22:16:23 (UTC)
Goto Top
Danke Dir sehr. Leider kann ich damit nichts anfangen. Wie schon gesagt absolutes neuland für mich.
Wenn ich Dich bitten darf kannst Du mir sagen oder die pfade richtig schreiben.
Ich muß die ordner in programme ändern: C:\Programme\Ubisoft\Ubisoft Game LauncherHans & Hänschen
und in eigene dateien: L:\Eigene Dateien\SpielHans & Hänschen
Member: bastla
bastla May 02, 2010 at 06:54:29 (UTC)
Goto Top
Hallo CyberDIDDL!

Soferne ich das richtig verstehen, liegen jeweils in "C:\Programme\Ubisoft\Ubisoft Game Launcher" bzw in "L:\Eigene Dateien\Spiel" die Unterordner "Hans", "Hänschen" und "Profil" - dann wären die Zeilen 4 und 5 so zu schreiben:
set "Pfad1=C:\Programme\Ubisoft\Ubisoft Game Launcher"
set "Pfad2=L:\Eigene Dateien\Spiel"
Im restlichen Teil des Batches wird dann immer anstelle von "%Pfad1%" "C:\Programme\Ubisoft\Ubisoft Game Launcher" verwendet, etc ...

Erstelle aber vor dem Testen bitte Sicherungskopien der Daten aus beiden angegebenen Ordnern!

Grüße
bastla
Member: CyberDIDDL
CyberDIDDL May 02, 2010 at 10:25:04 (UTC)
Goto Top
Ich habe die ordner Ubisoft Game LauncherHans & Ubisoft Game LauncherHänschen und je nachdem wer spielt muß umbenannt werden in Ubisoft Game Launcher
In Eigene dateien sind es auch 2 ordner SpielHans & spiel Hänschen und auch da muß umbenannt werden nur in spiel aber so das es zum oberen passt.
Member: bastla
bastla May 02, 2010 at 11:25:47 (UTC)
Goto Top
Hallo CyberDIDDL!

Dann wohl so:
@echo off & setlocal
set "User1=Hans"  
set "User2=H„nschen"  

set "Pfad1=C:\Programme\Ubisoft"  
set "Profil=Ubisoft Game Launcher"  

set "Pfad2=L:\Eigene Dateien"  
set "Spiel=Spiel"  

if exist "%Pfad1%\%Profil%%User1%" (  
    echo Profil derzeit: "%User2%"  
) else (
    echo Profil derzeit: "%User1%"  
)
echo\

set /p "Antwort=Profil wechseln (J/N)? "  
if /i "%Antwort:~,1%" neq "J" goto :eof  

if exist "%Pfad1%\%Profil%%User1%" (  
    ren "%Pfad1%\%Profil%" "%Profil%%User2%"  
    ren "%Pfad2%\%Spiel%" "%%Spiel%%User2%"  

    ren "%Pfad1%\%Profil%%User1%" "%Profil%"  
    ren "%Pfad2%\%Spiel%%User1%" "%Spiel%"  

) else (
    ren "%Pfad1%\%Profil%" "%Profil%%User1%"  
    ren "%Pfad2%\%Spiel%" "%Spiel%%User1%"    

    ren "%Pfad1%\%Profil%%User2%" "%Profil%"  
    ren "%Pfad2%\%Spiel%%User2%" "%Spiel%"  
)
Ich hoffe, die Namen der Variablen und deren Inhalte sind nun besser nachvollziehbar ...

Grüße
bastla
Member: CyberDIDDL
CyberDIDDL May 02, 2010 at 12:24:50 (UTC)
Goto Top
Sorry aber anscheinend bin ich zu blöd.
zb. if exist "%C:\Programme\Ubisoft%\%Ubisoft Game Launcher%%User1%" (
echo Profil derzeit: "%User2%"

was schreibe ich bei profil rein, da ist ja nichts mehr drin. Es soll ja der ordner Ubisoft Game Launcher Kind in Ubisoft Game Launcher umbenannt werden. Und der aktuelle Ubisoft Game Launcher soll dann in Ubisoft Game Launcher Papa umbenannt werden. usw.
Member: bastla
bastla May 02, 2010 at 12:36:12 (UTC)
Goto Top
Hallo CyberDIDDL!

Sobald Du Dich (mit Dir) darauf geeinigt hast, wie das Kind nun heißen soll ("Hänschen" oder doch "Kind") könntest Du die Zeilen 2 und 3 entsprechend anpassen - der Rest sollte Deinen Vorgaben entsprechen (und daher keiner Änderung mehr befürfen - ist allerdings, wie bereits erwähnt, ungetestet).
BTW: Die Variablen führen beim Ablauf des Batches nicht zu
if exist "%C:\Programme\Ubisoft%\%Ubisoft Game Launcher%%User1%" (
echo Profil derzeit: "%User2%"
sondern zu
if exist "C:\Programme\Ubisoft\Ubisoft Game LauncherHans" (
echo Profil derzeit: "H„nschen"
Grüße
bastla
Member: CyberDIDDL
CyberDIDDL May 02, 2010 at 15:34:45 (UTC)
Goto Top
Danke so verstehe ich es etwas besser.
Nur noch ein problem. Wenn ich es starte öffnet sich das fenster kurz und schliest sich wieder. Ist das so gewollt?
Member: bastla
bastla May 02, 2010 at 15:46:14 (UTC)
Goto Top
Hallo CyberDIDDL!
Wenn ich es starte öffnet sich das fenster kurz und schliest sich wieder. Ist das so gewollt?
Keineswegs - wäre auch kontraproduktiv, wenn ja in Zeile 18 eine Eingabe erfragt werden soll ...

Zum Testen von Batchdateien ist es sinvoll, zunächst die Eingabeaufforderung zu öffnen (Windows-Taste + r, Eingabe: CMD) und dann den Batch dort zu starten - dazu einfach die Batchdatei in das CMD-Fenster ziehen und mit der Eingabetaste starten - jetzt solltest Du allfällige Fehlermeldungen auch lesen können (ich tippe mal auf die Pfade/Ordnerangaben in den Zeilen 5 bis 9 als Ursache).

Wenn das noch nicht genügt, in Zeile 1 aus dem "off" ein "on" machen - dann wird jeder Befehl vor der Ausführung (bereits mit aufgelösten, also durch ihren Inhalt ersetzten, Variablen) angezeigt - wenn Du auch damit nicht weiter kommen solltest, poste bitte diese Ausgabe unter Verwendung von "<code></code>"-Tags.

Grüße
bastla
Member: CyberDIDDL
CyberDIDDL May 03, 2010 at 00:01:38 (UTC)
Goto Top
Darf ich Dir ne PN schicken?
Wie verschickt man hier PN´s? habe keinen knopf dafür gefunden.