Есть ли подоболочка, созданная при запуске `sh -c“ command ”`, новая оболочка или ничего из этого?

В bash, когда я запускаю следующую команду:

sh -c "command"

создала подоболочку, а затемcommand исполняется?

Я думаю, что команда будет работать в текущей оболочке, но я не уверен. Это предположение основано на том факте, что я уже тестировал с помощью следующих команд:

echo $BASHPID, $BASH_SUBSHELL

а такж

sh -c "echo $BASHPID, $BASH_SUBSHELL"

и результаты совпадают. Но это может немного вводить в заблуждение, как кто-то сказал мне, потому что переменные могут быть заменены до выполнения команды. Это правда?

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

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