watch 명령의 출력을 래핑하는 방법은 무엇입니까?

watch 명령의 출력을 래핑하는 방법은 무엇입니까?

다음 명령을 고려하십시오.

watch -d "ps -ef | grep java"

다음과 같은 출력이 제공됩니다.

kshitiz  11369 11285  0 Oct13 ?        00:06:02 /usr/lib/jvm/jdk1.7.0_40/jre/bin/java -Djava.awt.headless=true -Didea.version==14.1.2 -Xmx512m -Dfile.e

그 이상의 출력은 -Dfile.e잘리거나 화면 밖으로 흘러나옵니다. 출력을 스크롤하거나 자동으로 래핑하려면 어떻게 해야 합니까?

fold시계 없이 사용하려면:여기에 이미지 설명을 입력하세요.

fold시계와 함께 사용:여기에 이미지 설명을 입력하세요.

답변1

지정된 너비(기본값은 80)로 출력을 래핑하기 위해 출력을 접는 부분으로 파이프합니다.

watch -d "ps -efww | grep '[j]ava' | fold -s"
  • -w넓은 출력에는 플래그를 사용하고 ps, 무한 출력에는 플래그를 두 번 사용합니다.
  • fold -s공백에서 휴식을 취하세요.
  • grep또한 명령 에주의하십시오 . java로 변경했습니다 . [j]ava이렇게 하면 grep프로세스가 출력에서 ​​일치하지 않습니다 ps.

답변2

또한:

너비를 지정해 볼 수도 있습니다. 이렇게 하면 화면 너비를 최대한 활용할 수 있습니다.

제 경우에는 다음과 같이 완벽한 출력을 제공합니다. 모니터/단말기 크기에 따라 너비 매개변수를 사용자 정의하십시오.

watch -d "ps -ef --width 1000 | grep java | grep -v grep  "

관련 정보