echo $$的输出
echo $$
命令的输出在标准输出中显示一些数字,如下所示。
$ echo $$ 14594
这个数字是多少? 并且,
$ x=a $ echo $x a
在上面的例子中, echo $x
解析变量x并将x的值显示给标准输出。在这个命令echo $$
,是第二个美元符号代表任何变量吗?
$$
是当前shell(不是子shell)的PID( 进程标识符 )。 在脚本中,在子shell中, $$
返回脚本的PID,而不是子shell。 请参阅内部变量 。
您还可以在以下命令的输出中找到终端中echo $$
返回的PID:
ps ax | grep bash
$$
是bash的内部变量之一。 与$x
不同,在您的示例中,它不“包含”值,每次访问变量时都会请求该值。
在bash脚本中,它返回脚本本身的进程ID。 在脚本中,您可以调用kill $$
将SIGTERM
发送到您的脚本。
在bash shell中,它返回当前运行的bash进程的进程ID。
在bash脚本中,在子shell中,它返回脚本的进程ID,而不是子shell。