시스템에서 Firefox가 처음으로 열릴 때를 감지하는 스크립트를 만들고 싶습니다... tail
다음과 같은 테일 로그 파일을 사용할 생각입니다.
tail -f '/path/logfile' | grep -m1 "Firefox"
grep -m1
Firefox라는 단어가 표시되자마자 명령은 파이프라인을 중지하고 다음 줄로 이동합니다 /path/logfile
. 이를 달성하려면 다음과 같은 정보가 포함된 로그 파일을 살펴봐야 합니다. 시스템에 열려 있는 응용 프로그램에 대한 정보입니다. 그런 로그 파일이 있나요?
답변1
아니요, 해당 정보가 포함된 로그 파일이 없습니다.
eBPF 또는 기타 디버깅 도구를 사용하여 exec
특정 실행 파일이 호출될 때 커널에 알리도록 요청할 수 있습니다. 대신 eBPF를 사용하여 Firefox를 확인해야 합니다. (당신이 갖고 있지 않은 문제에 대한 해결책을 찾은 것 같은 느낌이 듭니다 :))execve
fexecve
execl, execlp, execle, execv, execvp, execvpe
grep
그러나 다음을 사용하여 현재 실행 중인 프로그램을 ps
간단히 쿼리할 수 있습니다. ps -A
원하는 만큼 grep을 사용할 수 있습니다. 그러나 pgrep
대신 grep을 사용하는 것이 좋습니다 ps -A|grep
.