# [CMD] ENTER drücken; For-Schleife



## Steusi (10. Oktober 2008)

Hallo Leute,

Wie sagt man der .cmd Datei, dass er ENTER drückt? Sprich, wenn ich meine Datei aufrufe, muss 2 mal ENTER gedrückt werden, das möchte ich gern über CMD regeln.

Habe gerade gelesen, das CMD wohl gar keine Tasten ansprechen kann. Stimmt das? Falls ja, kann mir jemand eine Programmiersprache nennen, die das wunderbar kann! Zusätzlich muss sie noch Datein ausführen, kopieren/ausschneiden, umbenennen und schließen können.
Die Befehle werde ich ja einfach finden, sagt mir nur welche optimal dafür wäre. 

Mein anderes Problem ist realisierbar, ich möchte 3 Dinge immer wieder ausführen:
(Der Code entspricht nicht dem Original, fürs Forum abgeändert)


```
"C\Ordner1\DATEI.exe"

move/y "C\Ordner1\AndereDATEI" "C\irgendwohin"

ren "C\irgendwohin\AndereDATEI" Nr1
```


Meine DATEI.exe's befinden sich im Ordner1, Ordner2, Ordner3 etc.
Sprich ich müsste eine Variable haben, welche immer um eins (1) steigt.

Das Gleiche bei "move" auch der Ordnername und bei "ren" der neue Name!

Also die Variable setze ich ja folgendermaßen:


```
set nummer=0:
```

Und in der Schleife muss dann wohl folgendes stehen:

```
set neu_nummer=%nummer%+1
```


Gut und schön und wie verbinde ich die neue Variable in meinem Pfadnamen?

```
"C\Ordner%neu_nummer%\DATEI.exe"
```


Nur verstehe ich die Schleife bei cmd oder batch-Datein nicht.
Definiert ist es mit: 

```
for %%Variable in (Gruppe) do Befehl [Befehlsparameter]
```


Die Forschleife soll bei 0 beginnen, der Laufindex immer um 1 ansteigen und bei 40 enden!
Was ist denn mit Gruppe gemeint, hab mir auch schon Beispiele im Netz angesehen, aber was bei der Gruppe geschrieben wurde verstehe ich nicht.

Hoffe jemand kann mir die FOR-Scheife erklären! Oder es einmal schreiben, damit ich sehe wie es aussehen muss, DANKE

Aber, wenn CMD wirklich keine Tasten ansprechen kann, brauch ich mit CMD ja gar nicht weiter arbeiten.

Vielen Dank schon mal im Voraus.


----------



## Steusi (20. Oktober 2008)

Hab mal gehört:
"Feedback zu Lösungen sind was feines.
Wenn man selbst eine Lösung gefunden hat kann man auch seinen eigenen ForenBeitrag beantworten."

Also mittels CMD lassen sich keine Tasten ansprechen, zur Lösung des Problems habe ich mich für VirtualBasic entschieden!


----------



## Enumerator (27. November 2008)

Hey!

Ist vielleicht schon zu spät, vor allem da Du natülich ausgerechnet VB als "Alternative" zur CMD wählen musstest... aber das mit den Tasten geht doch. Auch wenn ich von CMD Skripten nicht viel halte, hier die Lösung:


```
@ECHO off
CLS.

REM -- 2 mal enter drücken --

ECHO drueck 2 mal enter!
PAUSE > NUL
PAUSE > NULL

GOTO :TIPPEN

REM -- sprungmarke für dau's --

:DAU

CLS.
ECHO haha! das war wohl nix!

REM -- das hier kann einzelne keys auslesen --

:TIPPEN

SET userkey=m
SET /p userkey=tach auch! tipp mal 'a' oder 'b'...
SET userkey=%userkey:~0,1%


REM -- jetzt kommt die verarbeitung --

IF "%userkey%"=="a" GOTO :A_GEDRUECKT
IF "%userkey%"=="b" GOTO :B_GEDRUECKT

GOTO :DAU

REM -- jetz nur noch firlefanz --

:A_GEDRUECKT
ECHO fein gemacht!
GOTO :STOPP

:B_GEDRUECKT
ECHO perfekt!



:STOPP
```
Wer wirklich seine Zeit vergeuden und batchen will, findet hier ausführlichen Rat: http://www.antonis.de/dos/batchtut/index.htm

Greetz
Enum


----------

