csh内联if语句

时间:2013-11-04 18:38:38

标签: if-statement csh tcsh

我正在尝试添加脚本以在我的.cshrc文件中执行命令之前检查条件。如果条件不足,此检查脚本将返回0,否则返回1。 (我意识到这是常规的倒退,但我认为if语句会更容易。)

这是我尝试过的,用echo "ok"替换命令:

./checker.sh && echo "ok"

即使checker.sh返回0,也回显“ok”。

test ./checker.sh && echo "ok"

即使checker.sh返回0,也回显“ok”,但也会抑制checker.sh中的错误消息。

if ( ./checker.sh ) then echo "ok" endif

引发if语句语法错误。

我想将其转换为别名,因此是单行约束,例如

alias doAction './checker.sh && echo "ok"'

如果没有直接调用检查器脚本中的命令,如何使用(t)csh完成此操作?

谢谢!

1 个答案:

答案 0 :(得分:1)

当没有问题时我将脚本更改为exit 0,并在出现问题时退出非零数字。然后

./checker.sh && echo "ok"

表现得很好......

注意其他人可能会读到这个:上面的“test”构造不等同于C风格的if语句

if(./checker.sh){
  echo "ok"
}