Existe um subshell criado quando executo `sh -c“ command ”`, um novo shell ou nenhum dele
No bash, quando executo o seguinte comando:
sh -c "command"
é criado um subshell e depois ocommand
É executado
Meu palpite é que o comando será executado no shell atual, mas não tenho certeza. Esse palpite vem do fato de eu já ter testado usando os seguintes comandos:
echo $BASHPID, $BASH_SUBSHELL
sh -c "echo $BASHPID, $BASH_SUBSHELL"
e os resultados são os mesmos. Mas isso pode ser um pouco enganador, como alguém me disse, porque as variáveis podem ser substituídas antes que o comando seja executado. Isso é verdade?