当打开一个特定应用程序时,是否有任何日志文件可供我检查?

当打开一个特定应用程序时,是否有任何日志文件可供我检查?

我想创建一个脚本来检测 Firefox 何时在系统上首次打开...我考虑使用tail尾部日志文件,如下所示:

tail -f '/path/logfile' | grep -m1 "Firefox"

grep -m1一旦 Firefox 一词出现,该命令就会停止管道并转到下一行/path/logfile。为了实现这一点,我必须查看包含此类信息的日志文件...系统上正在打开的应用程序的信息。有这样的日志文件吗?

答案1

不,没有包含此类信息的日志文件。

您可以使用 eBPF 或其他调试工具要求exec内核在调用特定可执行文件时通知您。您需要使用 eBPF 对 Firefox 进行检查,而不是. (感觉有点像你找到了一个你没有的问题的解决方案:))execvefexecveexecl, execlp, execle, execv, execvp, execvpegrep

但是,您可以使用 来简单地查询当前正在运行的程序,并且由于 Firefox 会话可能持续超过 2 秒,因此每秒ps检查一次输出就足够了,并且不会给您的系统带来任何重大负载。ps -A您可以尽情享受 grep - 不过,我建议使用pgrep代替ps -A|grep

相关内容