Vi / Vim에서 모든 텍스트를 어떻게 선택합니까?


193

설정 파일을 편집하기 위해 VI 도구 사용.

파일에서 모든 텍스트 (약 1000 줄)를 선택하고 복사 한 다음 Google 문서에 붙여 넣으려면 어떻게해야하나요?

답변:


158

가장 간단하고 빠른 방법은 다음을 사용하는 것입니다. : % y +그런 다음 Google 문서로 이동하여 붙여 넣습니다. 설명:

  • % 모든 줄에서 작동하도록 다음 명령을 참조하십시오.
  • y  그 줄을 잡아 당기다
  • +  시스템 클립 보드에 복사

다른 방법 g g " + y G이지만 위의 방법이 더 빠르고 쉽다는 것을 인정할 것입니다.


10
@Tuxmentat 각 키의 기능을 설명해 주시겠습니까:%y+
Jas

10
이 대답은 각 키가 두 시퀀스 모두에서 수행하는 작업을 설명하면 더 좋습니다.
AsksAnyway

6
최선의 추측 : ':'은 "ex mode"명령을 사용한다는 것을 의미합니다 (제 생각에). 어쨌든 그것은 명령입니다. '%'는 전체 파일을 지정 하는 특수 명령 줄 범위 지정자 입니다. 'y'는 모든 것을 잡아 당기고 '+'는 클립 보드 register를 지정합니다 . : help <command>가 이것을 알아내는 데 도움이되었습니다.
Hawkeye Parker

11
나는 뭔가 잘못하고 있어야합니다. 내가 입력하고 :%y+, 얻을E488: Trailing characters
johny 왜

25
"E850 : 잘못된 레지스터 이름"이 나타납니다. 두 번째 방법은 복사에 효과적이지만 우분투 16.04의 시스템 클립 보드에는 도달하지 않습니다.
EntangledLoops

95

많은 답장을 보냈지 만 내가 선택하지 않은 선택을 취소했습니다.

ggVG이 목적으로 사용 하고 있습니다 (정상 모드에서 실행해야 함). 이 명령 은 문서 내부의 전체 텍스트 선택합니다.

Ctrl+A바로 가기 (기본 Ctrl+A맵) 로 정수를 증가시킬 필요가 없기 때문에이 목적으로 도 다시 매핑 했습니다 .

이것을 다음에 추가하십시오 .vimrc:

map <C-a> <esc>ggVG<CR>

그것은이 <esc>있는지 사용자가 정상 모드에 있도록, 첫째.


2
정확히 내가 찾고 있던 것은 기본적으로 Ctrl + A가 vim에 있지 않은 것이 좋습니다. 부작용이 없기를 바랍니다.
Nikos Alexandris

2
나는 개인적으로 사용 ggVG하지만 gg0vG$'정상적인'Ctrl + A 작업을보다 밀접하게 복제하기 때문에 더 적절할 수 있습니다.
Sheharyar

39

cat file브라우저에 붙여 넣어야 할 경우 출력을 사용 하고 선택한 다음 복사하여 붙여 넣기를 수행 할 수 있습니다.

vi의 경우 모든 텍스트를 선택하여 새 파일에 쓰는 방법입니다.

shift v  -- visual mode
shift g -- jump to eof
"*y -- yank select text
:e my_new_file -- create a new file
"*p -- paste into a new file

이론적으로 이것은 Linux와 Windows 모두에서 작동해야합니다. Mac에서 시도했지만 작동하지 않습니다.


1
웹 브라우저에 붙여 넣는 cat file방법이 있습니다. 이 shift v방법은 Vi의 내부 버퍼에만 복사합니다.
Aleksandr Levchuk

* 레지스트리를 사용하는 시스템 클립 보드를 사용하지 않는 경우-이 작업은 X에서만 작동하며 Windows에서 들었습니다. 따라서 ssh 인 경우 vim이 vim을 지원하는지 확인하려면 -X가 필요합니다. = unnamed

새 파일을 만들지 않고이 작업을 수행 할 수있는 대안이 있습니까? 서버에서 실시간으로 편집하는 경우 되돌릴 수 있도록 로컬 컴퓨터에 백업 코드를 유지해야합니다.
NJInamdar

고양이 +1 및 퍼티 선택. 물론, 큰 파일에는 작동하지 않으며 가장 사용자 친화적 인 방법이 아닙니다. 그러나 화면 뷰포트 외부로 나가는 작은 스크립트 파일을 복사하는 것으로 충분합니다.
Arnis Juraga

16

ggVG를 사용하십시오. "gg"를 입력하여 테스트 상단으로 이동 한 다음 VG를 입력하십시오.



7

CentOS-7 환경에서 Vim 7.4를 사용하고 있습니다. 모든 텍스트를 선택하는 데 도움이 된 것은

:%y

그런 p다음 전체 파일을 원하는 다음 파일에서.

또는

cat 명령을 사용할 수 있습니다.

cat copyfile > pastefile

이 자식 저장소 에는 다른 유용한 명령들도 있습니다.


3

Mac의 경우 pbcopy (칠판 복사)를 사용하십시오.

cat file.txt | pbcopy

file.txt의 내용은 이제 다른 응용 프로그램 (예 : 브라우저)에 붙여 넣기 위해 클립 보드에 있습니다.

pbpaste를 사용하여 클립 보드의 내용을 파일에 붙여 넣을 수도 있습니다.

pbpaste > file.txt

이것은 특별히 vi를 포함하지 않지만 Mac에서도 동일한 목표를 달성합니다.


1

Linux 데스크탑을 사용하는 경우 xclip 또는 xsel을 사용하여 클립 보드에로드 할 수 있습니다. 그런 크기의 경우 Google 문서에서 업로드 기능을 사용하고 싶을 수도 있습니다.


1

다른 방법은 다음과 같습니다.

당신은 눌러 v키보드의 키를 시각적으로 VIM을 설정

그런 다음 아래로 스크롤하여 모든 텍스트를 선택하십시오.

^+ INSERT복사

SHIFT+ INSERTGoogle 문서에서 원하는 곳에 텍스트를 붙여 넣습니다.




0

다음 명령을 사용하십시오.

cat <your file name>

파일 내용을 에코합니다. 이제 선택, 스크롤, 복사, 붙여 넣기를 수행하십시오.
게임 끝

전의.:

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