아래와 같이 텍스트 파일에 두 줄이 있습니다.
S<Switch_ID>_F<File type>
_ID<ID number>_T<date+time>_O<Original File name>.DAT
vi와 같이 두 줄을 아래에 추가하고 싶습니다.
S<Switch_ID>_F<File type>_ID<ID number>_T<date+time>_O<Original File name>.DAT
두 번째 줄이 삭제되고 두 번째 줄의 내용이 첫 번째 줄에 추가되었습니다.
vi에서 명령 모드를 사용하여 어떻게 할 수 있습니까?
답변
Shift+ J는 현재 행에서 행 변경 문자를 제거하므로 행의 어느 위치에서나 “J”를 누르면 현재 행과 다음 행을 원하는 방식으로 결합 할 수 있습니다.
답변
Vi 또는 Vim?
어쨌든 다음 명령은 ‘nocompatible’모드의 Vim에서 작동합니다. 즉, 거의 순수한 vi라고 생각합니다.
:join!
정상적인 명령으로 사용하려면
gJ
‘gJ’를 사용하면 공백을 추가하거나 제거하지 않고 그대로 라인을 결합합니다.
S<Switch_ID>_F<File type>
_ID<ID number>_T<date+time>_O<Original File name>.DAT
결과:
S<Switch_ID>_F<File type>_ID<ID number>_T<date+time>_O<Original File name>.DAT
‘J’명령을 사용하면 다음이 가능합니다.
S<Switch_ID>_F<File type> _ID<ID number>_T<date+time>_O<Original File name>.DAT
type>
와 사이에 공백이 _ID
있습니다.
답변
이것은해야합니다 :
J
답변
vi에서는 J
( Shift+ J) 또는 :join
대부분 원하는대로해야합니다. 공백을 조정합니다.특히, 대부분의 경우 두 개의 결합 된 줄 사이에 공백이 생겨 두 번째 줄이 들여 쓰기되면 들여 쓰기가 결합 전에 제거됩니다.
Vim에서는 gJ
( G, Shift+ J) 또는 을 사용할 수도 있습니다 :join!
. 공백을 조정하지 않고 선을 결합합니다.
Vim에서 자세한 내용 :help J
을 참조하십시오.
답변
” \n
“를 “”로 바꾸십시오 .
문서의 모든 줄에 대해 vi / Vim에서 :
%s/>\n_/>_/g
모든 교체를 확인하려면 다음을 수행하십시오.
%s/>\n_/>_/gc
답변
선택한 라인에 참여하려면 (시각 모드에 있음) gJ
아무 공백없이 라인을 연결하려면 누르 십시오.
이에 대한 자세한 내용 은 vi / Vim Stack Exchange 사이트 에 자세히 설명되어 있습니다 .
답변
첫 번째 줄에서 Shift+ 4( “$”)를 누른 다음 Shift+ j( “J”)를 누릅니다 .
도움이 필요하면 vi로 이동 한 다음을 누르십시오 F1.