터미널에서 출력을위한 줄 바꿈 비활성화


69

너무 길어서 줄 바꿈되는 터미널의 출력을 자주 읽습니다. 인쇄 된 출력을 수정할 수있는 방법이 없으므로 터미널에서 가로 스크롤을 허용해야합니다.

줄 바꿈비활성화 하고 가로 스크롤을 허용하도록 기본 OS X 터미널을 수정할 수 있습니까?

아니면 내가 사용할 수있는 다른 대안을 알고 있습니까?


오래된 질문이지만 여전히 해결되지 않은 것 같습니다. 예를 들어 GCC의 출력을 추가로 편집 할 수 없기 때문에 동일한 대답이 필요합니다 .gcc.gnu.org / onlinedocs / gcc / Language-Independent-Options.html 플래그가 -fmessage-length=0설정된 상태에서 여전히 다중 라인 경고 / 오류 출력. 나는 (현재는)하지 않습니다.
Michael Trouw

답변:


51

tput 은 나를 위해 속임수썼다 .

tput rmam

줄 바꿈을 비활성화합니다.

tput smam

줄 바꿈을 활성화합니다.


13
+1이지만 가로 스크롤을 추가하는 방법은 무엇입니까?
Erik Allik

화살표 키를 사용하면 다음 화면으로 가로로 이동할 수 있습니다.
michid

7
화살표 키를 사용하는 방법을 볼 수 없습니다 ... 그들은 나를 위해 작동하지 않습니다. 이 솔루션은 선을 현재 창의 너비로 자르는 것처럼 보입니다. 창을 더 크게 만들면 더 많은 문자가 포함되어있는 줄 오른쪽에 빈 공간이 있습니다. 여전히이 솔루션은 로그를 표시하고 맨 오른쪽의 정보가 현재 중요하지 않기 때문에 내 목적에 유용합니다.
Jason

2
좋은 발견! 자신에게 기억에 남는 zsh을 별칭의 몇 가지를 추가 : alias wrapon='tput rmam'&alias wrapoff='tput smam'
크리스 J 알렌

2
난독 화 된 명령에 대해 이야기
Andy

7

다음을 통해 출력을 파이프하십시오 less -S.

   -S or --chop-long-lines
          Causes lines longer than the screen width to be chopped (truncated)
          rather than wrapped.  That is, the portion of a long line that does
          not fit in the screen width is not shown.  The default is  to  wrap
          long lines; that is, display the remainder on the next line.

나는 여기 에서 무슨 일이 일어나고 있는지 설명하려고 노력했지만 , 원하는 것처럼 스크롤 막대로 가로로 스크롤하는 방법은 아닙니다.


6

iTerm 2는 라인 랩 비활성화를 지원하지 않는 것 같습니다. 그래도 덜 사용하거나 줄일 수 있습니다.

less /var/log/system.log
expand /var/log/system.log | cut -c 1-$COLUMNS
less -s <<< "$(osascript -e 'tell app "Terminal" to contents of window 1')"

1

(직접 출력에 대해 물었다 고 생각하지만 다른 사람들이 해결책으로 제안하는 경우) 출력을 somename.log 파일로 리디렉션하고 Applications> Utilities> Log-Viewer (또는 명령 줄에서 open somename.log) 로 엽니 다 .

터미널에 없지만 로그 뷰어는 대량의 출력 (검색, 스크롤, 필터링)을 처리하는 데 가장 적합한 로그 뷰어를 찾았습니다.


나는 당신이을 의미한다고 생각 Console.app합니까? Log Viewer.app유틸리티 에는 없습니다 . 그러나 콘솔도 래핑되지만 유일한 차이점은 기본적으로 긴 줄이 축소된다는 것입니다. 모든 것을 읽으려면 클릭해야하므로 불행히도 도움이되지 않습니다.
gentmatt

0

줄 바꿈을 멈추려는 것에 따라 vim을 사용할 수 있습니다. 긴 줄을 가진 파일에서 vim을 시작하고 다음을 입력하십시오.

:se nowrap

1
파일을 읽지 않기 때문에 도움이되지 않습니다. lsof를 통해 네트워크 정보를 읽고 있습니다.
gentmatt

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.