我想做
a = $b == howru ? good : not_good;
在c shell脚本中
我尝试使用&&
和||
运算符,但似乎我犯了一些错误,因为我习惯于使用Bash。
答案 0 :(得分:3)
首先,您的语法错误:
set
?
.. :
不是csh中的运算符。"正常" csh
if
语句如下:
if ( cond ) then
foo
else
bar
endif
您实际上可以将if
缩短为
if ( cond ) foo
但据我所知,你不能在这里添加else
。
A"短"语法与bourne shell中的语法完全相同,只是您需要使用set
关键字:
% [ "howru" = 'howru' ] && set a = good || set a = not_good
% echo $a
good
% [ "XXhowru" = 'howru' ] && set a = good || set a = not_good
% echo $a
not_good