$BASHPID
다음과 같이 일관되지 않은 동작을 발견했습니다 .
# On Mac Yosemite
echo $BASH_VERSION ${BASH_VERSINFO[5]} $BASHPID
# => 3.2.57(1)-release x86_64-apple-darwin14
# On Ubuntu
echo $BASH_VERSION ${BASH_VERSINFO[5]} $BASHPID
# => 4.3.11(1)-release x86_64-pc-linux-gnu 29134
Mac OSX는 $BASHPID
존재하지 않습니다. 이를 사용하여 이식 가능한 스크립트를 작성하는 것이 안전하지 않습니까?
답변1
내장 변수는 $BASHPID
bash 버전 4.0에서 도입되었습니다.
NEWS
Bash 소스 코드에서 파일을 봅니다.
397 -------------------------------------------------------------------------------
398 This is a terse description of the new features added to bash-4.0 since
399 the release of bash-3.2. As always, the manual page (doc/bash.1) is
400 the place to look for complete descriptions.
401
402 1. New Features in Bash
403
...
410 c. There is a new variable, $BASHPID, which always returns the process id of
411 the current shell.