получить pid в оболочке (Bash)

У меня проблема с Bash, и я нене знаю почему.

Под раковиной я вхожу:

echo $    ## print 2433
(echo $)  ## also print 2433
(./getpid) ## print 2602

GETPID» программа на C для получения текущего pid, например:

   int main() {
    printf("%d", (int)getpid());
    return 0;
   }

Что меня смущает, так это то, что:

Я думаю "(Команда)» это подпроцесс (я прав?), и я думаю, что его pid должен отличаться от родительского pid, но они одинаковы, почему ...когда я использую свою программу, чтобы показать pid между круглыми скобками, pid, который он показывает, отличается, верно?является '$ что-то вроде макроса?

Вы можете мне помочь?

Ответы на вопрос(5)

Ваш ответ на вопрос