Как я могу получить pid subshell?
Например:
$ echo $$
16808
Это не работает, потому что оригинальная оболочка расширяется $$
:
$ ( echo $$ )
16808
Почему одинарные кавычки не работают? После того, как исходная оболочка удаляет одинарную кавычку, не расширяется ли подоболочка $$
?
$ ( echo '$$' )
$$
Почему тоже eval
не работает? Является ли в eval
ведении субоболочке? Почему это дает мне оригинальный PID оболочки?
$ ( eval echo '$$' )
16808
Спасибо.
$$
расширения» против «другой pid в подоболочке»).