지난 10초 동안 실행된 프로세스를 기록하고 나열하는 뷰가 있나요?
특히 명령줄을 추적하고 싶습니다.
답변1
프로세스가 완료되지 않은 경우 다음을 통해 찾을 수 있습니다.
ps axho etime,cmd| sed ':a;s/^\(0*\) /\10/g;ta' | sort | less
그러나 프로세스가 이미 완료되었다면 확실성이 떨어집니다.
검색할 위치를 알아야 합니다...
경고하다!다음은 바이너리가 캐시에 없는 경우, 즉 한동안 액세스되지 않은 경우에만 작동합니다.
아마도 간단한 것만으로도 ls -ltru
충분할 것입니다:
/bin/ls -ltru /etc/init.d | tail
그렇지 않으면 다음과 같은 더 복잡한 명령이 나올 수 있습니다.
find /usr/bin -type f -amin -1
find ${PATH//:/ } -type f -amin -1
find ${PATH//:/ } /home/*/bin -type f -amin -1
1분 이내에 접근한 모든 파일이 표시됩니다.
10초면 훨씬 더 어렵습니다.
while read time;do
read name
[ $time -lt 10 ] && echo $name
done < <(find ${PATH//:/ } /home/*/bin -type f -amin -1 -print0 |
xargs -0 --no-run-if-empty stat -c $(date +%s)$'-%X ;"%n\n"' |
bc)
답변2
이 시도:
ps k-etime h -eo etimes,command | while read etime comm; do [ $etime -lt 10 ] && echo -e "$etime\t$comm"; done
그러면 지난 10초 이내에 시작되어 아직 실행 중인 모든 프로세스가 표시됩니다.