# .BAT datei Parameter



## bygones (21. Apr 2009)

Hi

ich will eine .bat datei schreiben, die eine liste von parametern nimmt und ein anderes Programm mit diesen Parametern, außer dem ersten Parameter, aufruft.

D.h. geb ich 1 2 3 4 als Parameter will ich 2 3 4 weitergeben.

in einer unix shell funktioniert SHIFT und dann $@

in .bat gibt es ja auch das SHIFT nur leider hat das keinerlei einfluss auf $* 

wie kann ich es machen dass ich die Liste der Parameter erhalte, OHNE den ersten Parameter ?

DANKE


----------



## maki (21. Apr 2009)

%2 steht für den 2. Parameter, %3 für den 3., usw.


----------



## bygones (21. Apr 2009)

das weiß ich... 

aber ich weiß nicht wieviele parameter ja übergeben wurden...

daher hätte ich gerne eine lösung ala "Das ist die gesamte Liste alle Parameter und mit Befehl X löscht man den ersten Parameter aus der Liste"...

also etwa


```
echo $* // ergibt 1 2 3 4
SHIFT
echo $* // ergibt 2 3 4
```


----------



## maki (21. Apr 2009)

Sollte eigentlich mit SHIFT gehen, zumindest alut dieser Quelle: Shift - reposition command line parameters

Falls nicht wäre es imho einen versuch wert die Datei mit der Erweiterung .cmd zu versuehen.


----------



## bygones (21. Apr 2009)

maki hat gesagt.:


> Sollte eigentlich mit SHIFT gehen, zumindest alut dieser Quelle: Shift - reposition command line parameters


Shift schiebt auch nach vorne, aber $* bleibt davon unberührt.... das was %2 war ist nun %1 etc... aber da ich nicht weiß wieviele % es gibt... bring mir das nicht viel.

ich hätte gerne eine möglichkeit $* zu manipulieren - oder vergleichbares


----------

