正如标题所示,我想知道的重点echo $$
是什么......我理解该命令echo $?
返回最后运行的命令的状态,现在我对echo $$
返回的内容感到困惑......我相信它运行与's 相关的东西PID
,我是正确还是完全错误?
答案1
$
扩展为所调用 shell 的十进制进程 ID。在子 shell 中(请参阅 Shell 执行环境),“$”应扩展为与当前 shell 相同的值。
当您可能向当前正在使用的其他 shell 发送信号(例如 KILL 或 SiGTERM)、通过/proc/$$/
目录中可用的数据确定有关 shell 的进程信息以及许多其他事情时,这是必要的。我依稀记得曾经在 shell 脚本中使用过它来捕获脚本的 PID,然后将其与脚本中定义的函数调用区分开来。它还可用于区分同名脚本的多个实例。