Switch und Case Probleme

T

tw-elektric

Eroberer
Hallo zusammen,

ich versuche mich gerade in einem CSH Script und verzweifle.
Dies ist mein Code:

Code:
echo win 200 200 >> $gui_in
echo bg $bgcolor >> $gui_in
echo fg 999999 >> $gui_in
echo font tbi24 >> $gui_in
echo fg $bgcolor >> $gui_in
echo label "1" >> $gui_in
echo fg 999999 >> $gui_in
echo label $exit_string >> $gui_in
echo label $exit_string2 >> $gui_in
foreach i(${tools_all})
set bohrer = `echo ${i} | cut -d'D' -f2`
echo $bohrer

switch ($bohrer)
   case 510:
   	echo fg 990000 >> $gui_in
	echo label ${i} >> $gui_in
   	breaksw

   default:
	echo fg 999999 >> $gui_in
	echo label ${i} >> $gui_in
   	breaksw
endsw

end
echo fg $bgcolor >> $gui_in
echo label "1" >> $gui_in
echo fg 999999 >> $gui_in

Nun nimmt er immer den default Wert, egal ob 510 in der Variable steht. Woran könnte das liegen. Anbei den Code welche ich durch Set Echo in der Console angezeigt bekomme:

Code:
Script message: echo win 200 200
Script message: echo bg 003900
Script message: echo fg 999999
Script message: echo font tbi24
Script message: echo fg 003900
Script message: echo label 1
Script message: echo fg 999999
Script message: echo label Bohrdatei erfoglreich erstellt!
Script message: echo label aktulle Bohrtools:
 )5D510message: foreach i ( T1D110
Script message: set bohrer = `echo ${i} | cut -d'D' -f2`
Script message: echo T1D110
Script message: cut -dD -f2
Script message: echo 110
Script message: 110
 )ript message: switch ( 110
Script message: end
Script message: set bohrer = `echo ${i} | cut -d'D' -f2`
Script message: echo T2D130
Script message: cut -dD -f2
Script message: echo 130
Script message: 130
 )ript message: switch ( 130
Script message: end
Script message: set bohrer = `echo ${i} | cut -d'D' -f2`
Script message: echo T3D160
Script message: cut -dD -f2
Script message: echo 160
Script message: 160
 )ript message: switch ( 160
Script message: end
Script message: set bohrer = `echo ${i} | cut -d'D' -f2`
Script message: echo T4D200
Script message: cut -dD -f2
Script message: echo 200
Script message: 200
 )ript message: switch ( 200
Script message: end
Script message: set bohrer = `echo ${i} | cut -d'D' -f2`
Script message: echo T5D510
Script message: cut -dD -f2
Script message: echo 510
Script message: 510
 )ript message: switch ( 510
Script message: end
Script message: echo fg 003900
Script message: echo label 1
Script message: echo fg 999999
 
csh ... gibts die noch? :D

Dein Debug-Output sieht für mich so aus, als ob du in der $bohrer-Variablen noch ein CR am Ende hast. Liest du die Daten aus einem Windows-File ein?

Guss ...
 
danke. hatte es vorhin auch noch entdeckt. ich hatte ein \n in dem string.
nun geht es, danke ;)
 

Ähnliche Themen

dovecot und postfix Konfiguration Problem

datei bei upload umbenennen

NagiosGrapher 1.7.1 funktioniert nicht

Displayport + externer Monitor zeigt bei startx nichts erst bei DVI

Mondorescue über Cron-Job

Zurück
Oben