Предположим, у меня есть эта простая программа на C, которая возвращает 4 в оболочку.
int main()
{
return 4;
}
Когда я его запускаю, тогда делаю echo $?
Я бы получил 4
, что ожидается
$ gcc foo.c && ./a.out
$ echo $?
4 <<<< expected
НО, когда я делаю следующее, я ничего не получаю
$ gcc foo.c && ./a.out && echo $?
$ <<<< Nothing - WHY????