【发布时间】:2014-06-02 23:43:18
【问题描述】:
几天前,我在远程服务器上运行了一个应用程序 (Matlab) 的多个实例(我不是 root)。每个实例将输出重定向到日志文件。
今天我想终止一个将输出重定向到特定日志文件的进程。我知道该日志文件的名称,以及该应用程序所有正在运行的进程的 PID。但我不知道哪个 PID 对应于该日志文件。
我的问题是如何找到写入该日志文件的 PID?或者至少得到几天前的命令历史;这样我就可以估计我运行该命令的时间,然后将其与当前 PID 的运行时间进行比较,找出最接近的匹配项?
注意:我尝试了命令history,但它只显示我仍然登录的今天的历史记录。我经常做的是登录到服务器,启动一个进程,注销,并在接下来的几天再次登录以查看结果。
【问题讨论】:
-
命令历史与用户有关,而不是与进程有关,我想。不过,有一种方法可以找到哪个文件由哪个进程打开。试着用谷歌搜索一下。
-
干杯。除了@skwllsp建议的fuser,我发现命令lsof有类似的功能