EDIT: Ich dachte ursprünglich, dass meine Variable Eingabe von der Tastatur nicht akzeptiert. Ich habe meine Frage korrigiert, um das Problem genauer widerzuspiegeln.tsch: case-Anweisung bewertet nicht
Im folgenden Skript wird die case-Anweisung nicht ausgewertet.
Ich bin ziemlich neu in tcsh ... Ich will nur input_line
Zeichen a
annehmen - von der Tastatur d
als Eingabe, die ich bin nicht sicher, es ist, und die switch-Anweisung ordnungsgemäß ausgeführt.
Ich lese Sobells "Ein praktischer Leitfaden für Linux-Befehle, Editoren und Shell-Programmierung." Meine Syntax scheint korrekt basierend auf dem Buch Kapitel 9 auf TCP, aber, an dieser Stelle habe ich keine Ahnung, was ich falsch mache.
Das Durchsuchen von SO führte nicht zu ähnlichen Fragen, also ist dies entweder schmerzhaft für viele offensichtlich oder noch niemand gefragt.
Kann man noch eine Erfahrung machen und meinen Fehler anzeigen?
#!/bin/tcsh
# menu interface to simple commands
set input_line = ''
echo "\n COMMAND MENU\n"
echo " a. Current date and time"
echo " b. Users currently logged in"
echo " c. Name of the working directory"
echo " d. Contents of the working directory\n"
echo -n "Enter a, b, c, or d: "
set input_line = "$<"
#
switch ($input_line)
case of [aA*]:
date
breaksw
case of [bB*]:
who
breaksw
case of [cC*]:
pwd
breaksw
case of [dD*]:
ls
breaksw
default:
echo "There is no selection: $input_line"
breaksw
ends
Nur klar zu sein, ich einen Skript bekommen kann, die genau die gleiche Sache in der Bash tut richtig zu arbeiten, aber ich bin auf Tcsh konzentriert.
Ich glaube, ich dachte 'von' war notwendig, weil ich nicht wusste, es war falsch! Danke für die Hilfe! – NonCreature0714