마지막 0 종료 출력을 기억하세요.

마지막 0 종료 출력을 기억하세요.

시간이 많이 걸리는 프로세스를 실행하고 있습니다. 시간은 크게 문제가 되지 않지만 RAM이 얼마나 필요한지 알고 싶습니다. 프로세스가 이미 실행 중이므로 /usr/bin/time옵션이 아닙니다. 프로세스의 pid를 찾아서 실행했습니다.

watch -n 1 grep VmHWM /proc/3100/status

잘 작동하고 그대로 두고 다른 작업을 한 다음 나중에 1초 간격으로 값이 기록된 내용을 확인할 수 있습니다. watch가 마지막 유효한 출력을

grep: /proc/3100/status: No such file or directory

옵션을 사용해도 -e도움이 되지 않습니다. watch0이 아닌 종료 시 출력을 플러시하지 않는 방법이 있습니까 ? 아니면 이전 제로 출구가 계속 표시되도록 가장 가까운 두 개의 출구를 표시하시겠습니까?

답변1

이를 위해 쉘 while 루프를 사용합니다.

pid=3100
while out=$(grep VmHWM /proc/$pid/status); do
  printf "\r$out     "
  sleep 1
done
printf "\n"

관련 정보