我有一个C-Shell代码,其中我使用了以下命令:
如果($#arr == 0 || $arr1 == "test1"),则
它会输出一条错误消息,提示"tcsh: arr: Subscript out of range“。显然是因为第一个条件是真的。如果第一个条件为真,是否可以强制它忽略第二个条件?
发布于 2009-12-28 00:05:44
csh在计算表达式之前解析整行并替换变量。因此,在本例中,您需要一个嵌套的if,因为or条件不实现对变量的短路求值。
https://stackoverflow.com/questions/1967443
复制相似问题