Elliot Shank

Subshells are interesting beasts.

#!/usr/bin/env bash

echo Parent: $$ $BASHPID

(
    echo Child: $$ $BASHPID

    (
        echo Grandchild: $$ $BASHPID
    )
)

Note that /bin/bash on macOS is old and does not support $BASHPID, so it does not support differentiating subshell processes.