Logs
是否有任何日誌文件可供我檢查何時打開一個特定的應用程序?
我想創建一個腳本來檢測系統上首次打開 Firefox 的時間……我考慮過使用
tail
尾隨日誌文件,如下所示:tail -f '/path/logfile' | grep -m1 "Firefox"
該命令
grep -m1
會在 Firefox 出現時停止管道並轉到下一行/path/logfile
。為此,我必須查看包含此類資訊的日誌文件……系統上正在打開的應用程序的資訊。有這樣的日誌文件嗎?
不,沒有包含此類資訊的日誌文件。
您可以使用 eBPF或其他調試工具讓您的核心在
exec
///呼叫特定執行檔時通知您execve
。您需要使用 eBPF 來檢查 firefox,而不是. (感覺有點像你找到了一個你沒有的問題的解決方案:))fexecve``execl, execlp, execle, execv, execvp, execvpe``grep
但是,您可以相當簡單地使用 查詢目前正在執行的程序
ps
,並且由於 firefox 會話可能持續時間超過 2 秒,因此檢查ps -A
每秒的輸出就足夠了,並且不會給您的系統帶來任何重大負載。你可以用 grep 來滿足你的需求——但是,我建議使用.pgrep
而不是ps -A|grep
.