Mac OS X 터미널에서 컬러 출력 복사


37

터미널에서 색상이 좋은 출력물이 보입니다.

터미널에는 "다른 이름으로 텍스트 내보내기"명령이 있지만 일반 텍스트 파일은 색상없이 저장됩니다. 복사 및 붙여 넣기와 동일합니다.

색상을 포함하여 터미널 출력을 저장하는 방법을 알고 있습니까?


이것이 중요한 경우 apple.com/feedback/macosx.html (응용 프로그램 / 유틸리티 피드백 영역) 또는 developer.apple.com/bugreporter (무료 개발자 계정을 등록해야 함 ) 를 통해 Apple에 알려주십시오 .
Chris 페이지

이제 터미널 아래 Edit -> Copy Special에 일반 Cmd-c 복사 명령에 대한 옵션 목록이 있습니다 . 여기서 일반 텍스트와 서식있는 텍스트 옵션간에 전환 할 수 있습니다.
Joshua Goldberg

답변:


12

터미널에서 텍스트를 선택한 다음 복사 한 다음 서식있는 텍스트를 지원하는 응용 프로그램 (예 : Mail, TextEdit, Word)에 붙여 넣으면 텍스트 색상이 유지됩니다.

Mail 및 TextEdit에서 터미널의 배경색도 붙여 넣은 것으로 보입니다. Word에서는 그렇지 않습니다. 이 불일치를 설명하는 방법을 잘 모르겠습니다.


어떤 OS X 버전을 사용하고 있습니까? 10.7.4에서는 작동하지 않습니다.
와일드 카드

1
@Wildcard 10.11.3에서 작동합니다. 이 글을 쓸 때 어떤 버전을 사용했는지 기억이 나지 않습니다.
Max Nanasy

1
메일에 붙여 넣기 위해 일반 복사를 사용하는 데 문제가 있었지만 색상이 손실되었습니다. 그러나 편집-> 특수 복사-> 배경색없이 복사 (어쨌든 선호)를 사용했을 때 효과가있었습니다. 옵션 드래그로 작업하여 사각형 선택을 만들었습니다. (10.12.6)
Joshua Goldberg

31

질문을 올리면 어떻게 창의력이 향상되는지 놀랍습니다.

"인쇄"대화 상자를 열고 PDF로 저장 한 다음 PDF에서 컬러 출력을 복사 할 수 있습니다.

또한 iTerm2 터미널 앱에는 CMDOPTC서식과 함께 복사 되는 단축키 가 있습니다.


1
이 솔루션은 Keynote 프리젠 테이션에서 터미널 예제를 생성 할 때 컬러 출력을 유지하는 데 적합합니다. 고마워!
beausmith

1
@Wojtek : 당신은 내 대답을 받아들이지 않을 때 약간의 평판이 들었지만 환영합니다 ... ;-)
martineau

iTerm2 바로 가기 +1! 왜 meny에서도 그렇지 않습니까 ???
Per Lundberg

1
저것은 ... 오래부터 가장 유용한 발견입니다 !!!
haavee 2018

당신이 경우 ⌘ + ⌥ + CiTerm2, 열린 기조 연설에서 그것을 붙여, 그것은 테이블 데이터로 가져옵니다. 유용한 방법으로 데이터를 형식화하는 방법을 알지 못했지만 잠재력이 있습니다.
Kevin Suttle

8

다음과 같이 컬러 출력을 클립 보드에 붙여 넣을 수 있습니다.

% command_which_produces_colors | pbcopy -prefer rtf

이것은 rtf (아마 색깔과 형식)를 macos의 보드에 넣습니다. 그런 다음 서식있는 텍스트를 이해하는 다른 것을 사용하여 클립 보드에 액세스 할 수 있습니다.

이것은 분명히 "마우스로 선택"과 동일하지는 않지만 한 번의 가치가 있습니다.


작동하지 않습니다. 첫 번째 문제는 command_which_produces_colors가 콘솔에 인쇄되지 않으므로 색상을 건너 뜁니다. 어쨌든 그들 중 일부는 색상을 인쇄하도록 강제 할 수 있으므로 다음 명령은 터미널에 색상을 출력합니다. CLICOLOR = 1 CLICOLOR_FORCE = 1 ls -alh | 티 그러나 pbcopy는 색상을 복사하지 않습니다. CLICOLOR = 1 CLICOLOR_FORCE = 1 ls -alh | pbcopy-pbcopy / pbpaste 명령의 경우 rtf +1을 선호합니다. 긴 파일을 클립 보드에 복사하기에 좋습니다 : "pbcopy <longfile.txt"
Wojtek Kruszewski

1
이 작업을 시도 할 때 command_which_produces_colorsANSI 코드 가 생성 되면 ANSI 코드를 pbcopy -Prefer rtf포함하여 텍스트를 복사하십시오 (예 : [0;34mTextblue 복사 Text). 중간 단계로 ANSI 코드를 RTF로 변환해야 할 수도 있습니다.
맥스 나나시

8

@akira의 답변 에 따라 다음을 생각해 냈습니다.

  1. ansifilter소스 패키지 다운로드
  2. 설치 아래의 지시 사항에 따라 ansifilter를 빌드하고 설치하십시오.
  3. 운영 <command that produces colors> | ansifilter --rtf | pbcopy -Prefer rtf
    • 당신은에 인수를 전달해야 <command that produces colors>출력이, 예를 들면 파이프 경우에도 색상을 생산하기 위해 강제로 ls --color=always대신의ls
  4. 그런 다음 서식있는 텍스트를 지원하는 응용 프로그램 (예 : Mail, TextEdit, Word)에 붙여 넣을 수 있습니다.

2

OS X에는 화면 복사를위한 몇 가지 키보드 단축키 (핫키)가 있습니다. 그러면 스크린 샷이 바탕 화면에 jpg 파일로 저장됩니다. 그 목록은 다음과 같습니다.

Cmd-Shift-3                             Take snapshot of the whole screen
Cmd-Shift-4                             Take snapshot of the selected area
Cmd-Shift-4-Spacebar                    Take picture of a window
Escape                                  Cancel
Hold Spacebar after Drawing the region  Move the selected area
Hold Option                             Resize selected area
Hold Shift                              Resize selected area horizontally 
                                        or vertically 

응용 프로그램 | 응용 프로그램 | 위치에 "Grab"응용 프로그램도 있습니다. 동일한 작업을 수행하는 유틸리티 폴더와 지연과 같은 몇 가지 추가 기능이 있습니다.

최신 정보

Snow Leopard (10.6.8)에서 기본 스크린 샷 형식은 jpg가 아닌 png이지만 무료 타사 TinkerTool 환경 설정 유틸리티를 사용하여 pdf를 비롯한 다른 여러 형식 중 하나로 변경할 수 있습니다 .


9
.jpg는 "순수한"텍스트만큼 좋지 않습니다.
akira

3
선택 영역의 덜 알려진 바로 가기의 경우 +1입니다.
Daniel Beck

@akira : OP는 포함 된 ANSI 이스케이프 시퀀스 를 세지 않으면 일반 텍스트 형식으로 할 수없는 색상을 원 하며 터미널 에뮬레이터처럼 해석하기 위해 무언가를 원하지만 다시 돌아옵니다. 원래 문제.
martineau

2
@martineau : 클립 보드의 기능에 따라 브라우저 나 단어 또는 xyz에서 복사 할 때 마크 업 (예 : 서식있는 텍스트 또는 HTML)으로 색상이 저장됩니다. 이러한 마크 업 스 니펫을 수신하는 애플리케이션에 따라 색상과 텍스트를 매우 잘 표시 할 수 있습니다. 터미널은 아스키 이스케이프 시퀀스를 수신하지만 정확하지만 아스키 이스케이프 시퀀스를 수신한다고해서 반드시 a) 해당 텍스트를 저장 (예 : html- 터미널로 생각)해야한다는 의미는 아닙니다. b) 선택한 텍스트를 다양한 방식으로 향상시킬 수 있습니다. 한 번에 다른 클립 보드에 다른 MIME 유형을 넣으십시오).
akira

3
@akira JPG는이다 정말 스크린 샷과 같이 대한 이미지 형식의 빈약 한 선택. 넓은 영역의 단색 및 선명한 단일 픽셀 라인 등. 다행히도 애플은 바보가 아니며 저장하는 파일은 PNG입니다. lbrandy.com/blog/2008/10/my-first-and-last-webcomic
rjmunro

0

내가하는 방법은 우수한 Textmate 2 앱을 사용하는 것입니다.

  1. R 그래픽 창에서 복사
  2. 빈 텍스트 메이트 문서에 붙여 넣기
  3. 원하는대로 문서 유형을 R 콘솔 또는 R로 변경
  4. copy-with-style tmbundle (shift-cmd-c) 사용
  5. 메일 앱 작성 창에 붙여 넣기

shift-cmd-c가 R 콘솔 창에서 직접 작동하면 좋을 것입니다.

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