Bash

巴斯__H磷一世數據___乙一種小號H磷一世D一種ndBASHPID And$ 在某些情況下會有所不同

  • October 19, 2017

我正在閱讀“Oreilly 的 BASH 袖珍指南”。它說:

目前 Bash 程序的程序 ID。在某些情況下,這可能與 $$ 不同。

以上解釋,解釋$BASHPID變數。

**問題:**哪些情況?

BASHPIDbash 手冊頁的描述中提供了一個範例:

  BASHPID
         Expands to the process id of the  current  bash  process.   This
         differs  from  $$ under certain circumstances, such as subshells
         that do not require bash to be re-initialized.

這是一個輸出變數內容的子shell範例,以及子shell外部的$$內容。BASHPID

$ echo $(echo $BASHPID $$)      $$       $BASHPID
             25680    16920    16920    16920
#             |        |        |        |
#             |        |        |        -- $BASHPID outside of the subshell
#             |        |        -- $$ outside of the subshell
#             |        -- $$ inside of the subshell
#             -- $BASHPID inside of the subshell

引用自:https://unix.stackexchange.com/questions/62231