0

我正在尝试使用 cshell 验证输入,但在使用确切的语法时遇到了问题。我知道你可以像这样使用 switch case 结构:

switch ( $input )
  case [0-9]:
     echo Input is good

但是有没有办法用 if-then 语句来做到这一点?我知道最简单的解决方案是停止使用糟糕的脚本语言,但如果有人能用 csh 给我答案,我将不胜感激。

4

1 回答 1

1

我的 csh 技能有点过时,但我相信您正在寻找的语法是:

if ($input =~ [0-9]) then
    echo "Input is good"
endif

我在脚本中使用 csh,比如 bash,甚至 sh 的唯一原因是因为我必须维护一个现有的脚本并且不允许重写它,或者它必须来自 ac shell 环境。(如果你有决心,有办法解决最后一个问题。)

于 2013-02-26T18:41:10.993 回答