Hallo !
Ich brauche mal wieder einen Schubs
Ich schreibe gerade ein Script, welches mir die täglichen AdminChecks bestimmter Dateien und Attribute abnehmen soll.
(Kommandozeilenprogramm)
Jetzt wollte ich bei der Gelegenheit die Parameterübergabe beim Aufruf etwas flexibler als mit $Cmdline[ ] gestalten.
Das ist mir zu Statisch, da bei bestimmten Schaltern zusätlich Schalter gefordert werden und bei anderen nicht. Das wäre mit $Cmdline[] zu viel
frickelarbeit.
Des hab ich mal versucht:
Spoiler anzeigen
$line=$CmdLineRaw
$string=StringSplit($line,"-")
For $i=0 to $string[0] Step 1
$params=StringSplit($string[$i+2], " ")
$parameter[$i][0]=$params[1]
$parameter[$i][1]=$params[2]
Next
Aufruf ist z.B folgender:
fileop datei.txt -S Suchstring -m .....
Habe mir also erstmal die ganze Eingabezeile in die Variable $line geholt.
StringSplit "-"
Erzeugt auf jeden Fall schon mal die jeweiligen Paare d.h
in $string[2] steht dann "S suchstring"
Jetzt wollte ich mit einem erneuten StringSplit " " dafür sorgen, dass
"S suchstring" auch von einander getrennt werden. Und das Resultat in das Zweidimensionale Array $parameter packen. So das ich immer zu dem Schalter auch die übergebenen Parameter abspeichere.
Leider bekomme ich beim Ausführen des Skriptes immer folgende Fehlermeldung:
$parameter[$i][0]=$params[1]
^Error: Badly formated variable or macro
Ich wüsste nicht, was daran "Badly formated" sein soll.
Was mach ich falsch ????
Gruß
Gawe