몇 시간 동안 실행되는 백그라운드 프로세스가 있습니다. write
실시간으로 통화량을 추적하고 계산 하고 싶습니다 .
sudo strace -p27861 -s50 -e write
그것은 나에게 다음 줄을 제공합니다 :
write(1, "...........", 70) = 70
내가 원하는 것은 다음과 같은 실시간 통화 수를 얻는 것입니다.
write(1, "...........", 70) = 70, 1
write(1, "...........", 560) = 560, 2
write(1, "...........", 103) = 103, 3
아니면 그냥 세어보세요:
1
2
3
답변1
예를 들어 GNU AWK를 사용하여 출력을 사후 처리하면 됩니다.
strace -q -p27861 -s50 -e write -e signal=none 2>&1 | gawk '{ print $0 ", " ++i }'
(이것은 당신이 원하는 실시간 출력을 정확하게 제공합니다) 또는 cat -n
제안된 대로사용자 414777:
strace -q -p27861 -s50 -e write -e signal=none 2>&1 | cat -n
-q
"Attach" 메시지를 억제하고 -e signal=none
신호 추적을 억제합니다.