虽然我打开了两个终端,但当我在一个终端中运行 [程序名称] & 时,为什么当我在两个终端上运行 ps 时,只有我用来运行程序的终端显示进程?
答案1
默认情况下,
ps
选择与当前用户具有相同有效用户 ID (euid=EUID) 的所有进程并与同一终端关联作为调用者。
您可能正在运行ps
以同一用户身份在两个终端中运行该命令,但这些是两个不同的终端。正如文件所述,ps
将默认情况下 只显示与同一终端关联的进程。
您可以使用命令查看终端的ID tty
。
要查看与特定终端关联的进程,您可以使用选项-t
。