我正在使用一种通过 Linux 服务器上的代理执行的工具。我们也可以通过登录 Linux 服务器手动执行它。我试图(通过 Linux shell 脚本)确定用户是否已登录或是否通过代理调用该进程。根据此情况,我想执行代码的不同部分。
Linux 中是否存在可以帮助确定这一点的变量?
答案1
尝试使用pstree --show-parents
进程 ID。这将告诉您哪个进程启动了该程序。
例如:
$ pstree -s 18445
systemd───sshd───sshd───sshd───bash
$ pstree -s 21797
systemd───nginx───nginx