Die Standard-Warnungen in Bezug auf den Einsatz von tcsh
/csh
gelten, aber hier ist die Übersetzung:
if ("$1" == "") then # parentheses not strictly needed in this simple case
echo "variable is empty"
else
echo "variable contains $1"
endif
Beachten Sie jedoch, dass, wenn Sie lieber einen beliebigen Variablennamen verwenden waren als $1
in den oben genannten, Die -Anweisung würde brechen, wenn diese Variable noch nicht definiert wurde (wobei $1
immer definiert ist, selbst wenn nicht gesetzt).
für den Fall zu planen, wo eine Variable, $var
sagen, nicht definiert werden kann, es wird schwierig:
if (! $?var) then
echo "variable is undefined"
else
if ("$var" == "") then
echo "variable is empty"
else
echo "variable contains $var"
endif
endif
Die verschachtelten if
s zu vermeiden, das Skript benötigt brechen , wie tcsh
anscheinend nicht kurzgeschlossen (eine else if
Verzweigung bedingte wird ausgewertet, auch wenn die if
Zweig eingegeben wird, ähnlich, beide Seiten von &&
und ||
Ausdrücke sind scheinbar immer ausgewertet - das gilt zumindest in Bezug auf die Verwendung von nicht definierten Variablen.
[Sind Sie sicher, dass Sie es konvertieren sollte 'tcsh'?] (Http://www.grymoire.com/unix/CshTop10.txt) – chepner
Tcsh ist für die Programmierung nicht geeignet, aber versuchen Sie dies:' if ("x $ 1" == "x") '. –