Как видно из названия, мне интересно, что это за пункт echo $$ ... Я понимаю, что команда echo $? возвращает статус последней команды, которая была запущена, и теперь я я нахожусь в тупике о том, что возвращает echo $$ ... Я полагаю, что он запускает что-то, связанное с PID, я несколько верен или совершенно не прав?
Из стандартного определения POSIX:
$ Расширяется до идентификатора десятичного процесса вызываемой оболочки. В подоболочке (см. Shell Execution Environment), '$' будет расширяться до того же значения, что и текущая оболочка.Это необходимо, когда вы можете посылать сигналы, такие как KILL или SiGTERM, в оболочки, отличные от того, что вы используете в данный момент, определяя информацию о процессе оболочки через данные, доступные в каталоге /proc/$$/, и многое другое , Я смутно вспоминаю использование его один раз в сценарии оболочки для захвата ПИД-кода сценария, а затем отличает его от вызовов функций, определенных в скрипте. Он также может использоваться для различения нескольких экземпляров сценария с таким же именем.
Из стандартного определения POSIX:
$ Расширяется до идентификатора десятичного процесса вызываемой оболочки. В подоболочке (см. Shell Execution Environment), '$' будет расширяться до того же значения, что и текущая оболочка.Это необходимо, когда вы можете посылать сигналы, такие как KILL или SiGTERM, в оболочки, отличные от того, что вы используете в данный момент, определяя информацию о процессе оболочки через данные, доступные в каталоге /proc/$$/, и многое другое , Я смутно вспоминаю использование его один раз в сценарии оболочки для захвата ПИД-кода сценария, а затем отличает его от вызовов функций, определенных в скрипте. Он также может использоваться для различения нескольких экземпляров сценария с таким же именем.