터미널에서 긴 출력 줄 축소


1

나는 터미널 출력이 매우 길고 \ n 유용한 기능이 거의없고 원하는 출력 (예 : 오류 로그 또는 ack와 일치하는 축소 된 파일)을 찾는 방법으로 얻는 경우가 많습니다. 긴 선을 붕괴시킬 수있는 도구가 있습니까? 필자에게 이상은 라인 전체가 붕괴되었을 가능성을 시사하는 표시 일 것입니다. 전체 라인을보고 싶으면 클릭하면 확장 될 수 있습니다. OS X Terminal을 사용하고 있지만, 이것을 제공한다면 다른 툴로 전환해도 좋습니다. 내 출력을 파이프 할 수있는 터미널 폭이 끝나면 줄을 자르는 해결 방법도 도움이 될 것입니다.

답변:


0

여기에 몇 가지 간단한 해결책이 있습니다. 80 자 이상의 행을 자르려면 다음을 포함하는 스크립트를 작성하십시오.

#!/bin/sh
expand "$@" | cut -c1-80

당신의 프로그램을 그 안에 파이프하십시오. 약간 더 정교한 접근법은

#!/bin/sh
expand "$@" | awk '{ if (length <= 80) print; else print substr($0,1,77) "...";}'

이것은 ... 데이터를 버릴 때 마커로 사용합니다. 처음 77 문자 만 제공하므로 ... 그 자체가 마진을 지나치지 않습니다.

그만큼 expand 명령은 탭을 공백으로 확장하는 데 사용됩니다. 왜냐하면 cutawk 명령은 단순히 문자를 세고, 10 개 이상의 탭이 포함 된 줄이 너무 길다는 것을 알지 못합니다.


1
고마워, 몰랐어. expand. 아마도 나는 일할 수 있었다. tput cols 가변 터미널 너비에 대해서는 80 대신에.
timbrell
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.