Unterstützung im CMD Bereich, bei der Umsetzung einer Idee

China

Fleet Admiral
Registriert
Dez. 2004
Beiträge
13.215
Servus,

da ich ein absoluter n00b im programmieren bin, suche ich die Hilfe von Profis. ;) :D

Ich bräuchte ein Proggi, dass folgendes kann:

Lösche gamedata\textures\ui\ui_load.dss

Zufallszahl 1-10

Wenn Zufallszahl X kopiere gamedata\textures\ui\load\ui_load_X nach gamedata\textures\ui und benenne sie um in ui_load.dss

Ich bilde mir mit meinem glänzenden Unwissen ein, dass man das auch unter DOS hin bekommt...
Nur da bin ich natürlich genau so gut, wie in jeder anderen Sprache^^

Am liebsten wäre mir es auch natürlich unter DOS, da ich das Spiel eh mit einem DOS Befehl starten muss.


Wäre echt Klasse, wenn mir jemand fix was klöppeln könnte! :D


Greetz

China

PS: Und nein... es ist keine Hausaufgabe^^
 
Zuletzt bearbeitet:
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

Naja, DOS ist keine Sprache, sondern ein Betriebssystem. :)
Keine Ahnung, was DOS alles unterstützt. Vielleicht bekommt man es mit einer Batch hin.

Code:
set /a rnd=%random% %%10 + 1
wäre die Zufallszahl (als Varaible rnd) unter Windows. Wenn DOS das unterstützt - gut, dann geht es. (Kann ich jetzt nur nicht testen.) Löschen, kopieren etc. sollte nicht das Problem sein.

Soll aber die Datei wirklich erst gelöscht werden und dann erst die Bedingung mit der Zufallszahl geprüft werden. Mit etwa 90% Pseudo-Wahrscheinlichkeit hast du dann nämlich gar keine ui_load.dss.
 
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

Nabend,

mal auf die Schnelle eine BATCH getippt:
Nicht getestet, aber so in etwa sollte es gehen.

<name>.bat

del gamedata\textures\ui\ui_load.dss
set /a zufallszahl=%random%%10
copy /B gamedata\textures\ui\ui_load_%zufallszahl% gamedata\textures\ui\ui_load.dss
 
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

Achso, dann hatte ich das etwas falsch verstanden.

Löschen muss man dann eigentlich gar nichts.
Code:
@echo off
set /a rnd=%random% %%10 + 1
copy "gamedata\textures\ui\load\ui_load_"%rnd% "gamedata\textures\ui\ui_load.dss" /Y
exit
Die Datei sollte im gleichen Verzeichnis wie gamedata liegen, ansonsten Pfade anpassen.
Ist jetzt ungetestet. Bei "/B" habe ich keine Ahnung.
 
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

Gut, werde ich mal testen^^

Löschen muss man nix, wenn man das per copy einfach überschreiben kann, aye.

Sehr schön! :daumen:

Werde ich morgen mal testen weil jetzt

:n8:
 
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

DOS ist seit XP kein Bestandteil von Windows mehr. Und ich bezweifle, dass du ein älteres Betriebssystem benutzt :X
 
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

Ähm mag sein, aber man kann nach wie vor darüber Befehle abfeuern und darauf kommt es doch an.
Natürlich weiß ich, dass ich mit meinem Nichtwissen hier einige dazu ermutige, die Hände vors Gesicht zu hauen... aber hey: Man hat erkannt, was ich mir vorstelle, von daher hat doch alles wunderbar geklappt. :)

Edit:

Habe die variante von powerfx mal getestet... aber der Rechner sagt mir, er findet den Pfad nicht.

Die Batchdatei liegt im gleichen Ordner, wie der "gamedata" Ordner.
Den müsste das Ding doch jetzt finden... oder muss da was umgeschrieben werden?


Bei der von E.o.B. ist die Zufallszahl über 10 und er behauptet, er findet die Datei ui_load.dss nicht... hmmm....

Noch mal eine Verständnisfrage...:

@echo off
set /a rnd=%random% %%10 + 1
copy "gamedata\textures\ui\load\ui_load_"%rnd% "gamedata\textures\ui\ui_load.dss" /Y
pause

Fehlt bei dem fett markierten nicht noch der Dateityp?

Im Ordner "ui_load" sollen folgende Dateien liegen:

ui_load_1.dds
ui_load_2.dds
ui_load_3.dds
ui_load_4.dds
ui_load_5.dds
ui_load_6.dds
ui_load_7.dds
ui_load_8.dds
ui_load_9.dds
ui_load_10.dds

Natürlich könnte ich die Dateien auch vorbereiten und die Enddung weglassen.
Durch die Umbenennung am Ende wird die Datei ja weider eine .dds
 
Zuletzt bearbeitet:
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

Hast du es genauso eingeben, wie powerfx es vorgeschlagen hat?

Ich bin ja kein Dos-Mensch bzw. Ochse aber kann es sein, dass noch ein Laufwerksbuchstabe in den Pfad gehört?
 
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

China schrieb:
Ähm mag sein, aber man kann nach wie vor darüber Befehle abfeuern und darauf kommt es doch an.

Nein, kann man nicht. Wenn du versuchst, ein DOS-Programm zu starten, wird Windows es dir verweigern, weil weder DOS, noch die früher vorhandene NTVDM mehr mit Windows ausgeliefert werden.

Dieses Fenster mit den Buchstaben und dem schwarzen Hintergrund ist die NT-Konsole. Die hat mit DOS überhaupt mal gar nichts zu tun. Verstehe nicht, wie man auf diese Idee kommen könnte, wenn man jemals in seinem Leben DOS benutzt hat.

€:
keindos.png
 
Zuletzt bearbeitet: (Fotobeweis!)
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

Du hast ja Recht nur irgendwie weiß jeder der DOS nicht kennt und auch die meisten anderen was damit gemeint ist :D.
 
AW: Unterstützung im DOS Bereich, bei der Umsetzung einer Idee

Code:
del gamedata\textures\ui\ui_load.dss
set /a zufallszahl=%random:~-1%
copy /B gamedata\textures\ui\ui_load_%zufallszahl%.dds gamedata\textures\ui\ui_load.dss
pause

Also so spuckt er mir zu mindestens eine gute Zahl aus.
Bei allen anderen kam immer eine höhere Zahl als 10 bei herum.
Nur es wird weiter fleißig über den Pfad gemeckert.

Code:
E:\Misc\Modpack\TEST>del gamedata\textures\ui\ui_load.dds

E:\Misc\Modpack\TEST>set /a zufallszahl=1

E:\Misc\Modpack\TEST>copy /B gamedata\textures\ui\ui_load_1.dds gamedata\textures\ui\ui_load.dds
Das System kann die angegebene Datei nicht finden.

Muss da bei der Pfadangabe was anders sein?

@asdfman

Also bei uns heißt das Ding immer noch "DOS-Box" auf der Arbeit.
In seltenen Fällen kommt mal ein: Mach mal ein cmd auf...

Aber ja... du hast Recht^^
Mit DOS hat das nix mehr am Hut.
 
Zuletzt bearbeitet:
Das ist ja unfair, unsereiner kann seine Blöße nicht einfach kaschieren und mal eben fix aus DOS im Titel cmd machen. :)

Wie sehen denn die Berechtigungen in dem Ordner aus? Nicht, dass du möglicherweise Adminrechte bräuchtest. Die Syntax ist so eigentlich in Ordnung.
 
Ich teste es im Moment auf einen externen Datenträger auf der Arbeit...

Ich werde es zuhause noch mal testen, da bin ich mir sicher, dass ich auf alles Zugriff habe.
Andererseits... er löscht ja ohne Probleme die Vorlage, scheitert dann aber angeblich beim kopieren...

Ich lese gerade, dass copy nur für Vorgänge im gleichen Ordner sein soll und für alles weitere soll man xcopy nehmen.
Habe ich mal getestet... Jetzt fällt das erste Meckern weg, aber es wird behauptet, er findet die gewünschte Datei nicht im ui_load Ordner. *narf*
 
Zuletzt bearbeitet:
Wie gesagt, die Syntax müsste passen. "Das System kann die angegebene Datei nicht finden." würde ja eigentlich heißen, es findet die ui_load_1.dds nicht. Die befinden sich schon im selben Ordner, und nicht noch im Unterordner load? (Wie im Anfangspost noch)
 
Ahhhhhh! Da sagste was! Der Pfad war natürlich falsch! :rolleyes: :freak:

jetzt geht es wunderbar! :D

Code:
del gamedata\textures\ui\ui_load.dds
set /a zufallszahl=%random:~-1%
copy /B gamedata\textures\ui\ui_load\ui_load_%zufallszahl%.dds gamedata\textures\ui\ui_load.dds
pause

Geil! Danke Jungs! :)
 
schön & gz

*nur das mit %random% irretiert mich grade, in meinem großem roten DOS Buch (DrDos) stehts mit dem %10 drinn :/ naja egal, hauptsache funzt.
 
Du hattest davor die Endung nicht angegeben, also nahm ich an, es gibt keine.

Zahlen größer 10 sollten da nicht erzeugt werden.
Code:
%random% %%10
generiert eine ganze Zahl im Intervall [0 .. 9].
Code:
%random% %%10 + 1
dementsprechend [1 .. 10].

Aber wenn es jetzt funktioniert, gut.
 
Für die Leute, die sich wundern: Modulo muss in der Batch als %% geschrieben werden, während bei Eingabe im Konsolenfenster ein einfaches % genügt, so wie es auch bei for-Schleifen in einer Batch %%a statt %a heißt.

@China Bei so 'nem längeren Pfad hat man sowas halt schnell mal übersehen, war mir nicht sicher, ob du den Ordner nicht zwischendrin zu Testzwecken geändert hattest.
 
So Jungs, hier zu Hause, nach Korrektur der Pfade rennt alles wunderbar! :daumen:

Vielen dank für die Hilfe! :schluck:
 

Ähnliche Themen

Zurück
Oben