$?值与我的 ksh 脚本中的退出代码不匹配

$? value does not match the exit code in my ksh script

我的 ksh 脚本中有以下代码片段。

if [ $rc -ne 0 ]; then
   print Error...
   exit 1
fi

这个块在我看到打印的语句后执行,但是在脚本之后,在 shell 提示符下,当我键入 echo $? 时,我得到的输出是 0。

我认为代码没有从提到的片段中返回。 我在 ksh 中编写了以下代码和 运行 。输出符合预期

ajay@pavilion:~$ cat ajay.ksh
var=1
if [ $var == 1 ]
then 
    print "Error"
    exit 1
fi

输出

ajay@pavilion:~$ ksh
$ ./ajay.ksh
Error
$ echo $?
1
$