전공 지식 정리/유닉스

#1 Vi 편집기 명령어2

2022. 4. 20. 16:38

덮어쓰기

r : 커서 위치한 곳의 문자를 다른 한 문자로 교체

R : 현재 커서 위치에서부터 ESC를 칠 때까지 계속 덮어쓰기

s : 현재 커서 위치에 있는 문자를 $로 변경하고 ESC를 칠 때 까지 계속해서 문자 삽입

 

단어 바꾸기

cw

현재커서 위치로부터 그 단어의 마지막까지 수정, 수정 후 ESC를 누르면 된다.

 

라인 바꾸기

cc

현재 커서가 위치한 라인 내용을 모두 바꿈

라인은 공백으로 변경되고 공백에 변경할 내용 입력한다.

입력이 종료되면 ESC키를 눌러 변경이 종료됨을 vi에게 알려야 한다.

 

C 또는 c$

 

현재 커서 위치에서 왼쪽 내용을 변화시키지 않고 오른쪽 내용을 모두 바꾼다.

그 라인의 가장 끝에 있는 문자가 $로 표시되어 수정가능 영역을 표시해준다.

수정 후 ESC를 누르면 된다.

 

~

대문자는 소문자로 소문자는 대문자로 바꾸어주는 명령어이다.

 

:g/text/s//aftertext/g

파일 내 모든 text 문자열을 aftertext로 바꾼다.

:g/text/s//aftertext/gc

변경할 때 마다 변경할건지 물어본다.

변경 원하면 y입력 후 엔터키, 변경 원하지 않으면 n입력 후 엔터키

검색 종료하려면 ctrl + c

 

명령어 취소

u

버퍼에서 변경했던 마지막 명령을 그 이전의 상태로 돌린다.

대문자 U

현재 라인에서 수정한 모든 사항을 취소한다.

 

명령어 반복

.

바로 이전에 수행되었던 명령어를 한번 더 반복한다.

 

복사하기

yw

현재 커서가 위치한 단어를 버퍼에 복사한다.

yy 또는 Y

현재 커서가 위치한 라인을 버퍼에 복사한다.

nyy 또는 nY ( ex 5Y )

현재 커서 위치 라인부터 사용자 가 지정한 n개의 라인을 버퍼에 복사한다.

 

붙이기

p

버퍼에 복사되어 있던 문자열을 커서 위치 오른쪽 또는 라인의 아래 라인에 붙이기 한다.

대문자 P

버퍼에 복사되어 있던 문자열을 커서 위치 왼쪽 또는 라인의 위쪽 라인에 붙이기 한다.

 

라인병합과 분리

대문자 J

현재 커서 위치 라인과 그 아래쪽 라인을 현재 커서 위치 라인에 단일 라인으로 연결한다.

라인분리

분리하고자 하는 곳에 커서 위치시키고 i누르고 엔터키를 치면 라인이 분리된다.

현재는 삽입모드이므로 편집모드로 전환하기 위해 ESC를 누른다.

 

여러 라인 복사와 이동

: 5co10

5번 라인을 복사해 10번 라인 밑으로 삽입

: 4,8co20

4번 라인부터 8번 라인까지 복사해 20번 라인 밑으로 삽입

: 6,9m1

6번 라인부터 9번 라인까지 복사해 1번 라인 밑으로 이동

 

기타 기능

:r echo.c

현재 어떤 파일에서 작업을 한다고 가정할 때 커서가 있는 라인 밑에

echo.c 라는 파일을 삽입한다.

 

:!

vi를 종료하지 않고 유닉스 명령을 실행한다.

예시)

:!date

'전공 지식 정리 > 유닉스' 카테고리의 다른 글

#2 파일과 디렉토리 - 접근 허가  (0) 2022.06.15
#2 파일과 디렉토리 - mkdir, rmdir, 파일내용출력  (0) 2022.06.15
#2 파일과 디렉토리 - ls명령어  (0) 2022.06.15
#1 Vi 편집기 명령어1  (0) 2022.04.20
#0 유닉스 개념, Vi 편집기 설정 및 간단 조작  (0) 2022.04.20
'전공 지식 정리/유닉스' 카테고리의 다른 글
  • #2 파일과 디렉토리 - mkdir, rmdir, 파일내용출력
  • #2 파일과 디렉토리 - ls명령어
  • #1 Vi 편집기 명령어1
  • #0 유닉스 개념, Vi 편집기 설정 및 간단 조작
daramG
daramG
dotori Java
daramG
다람쥐의 개발 블로그
daramG
전체
오늘
어제
  • 분류 전체보기 (193)
    • Java 코딩테스트 공부 (67)
      • Java 알고리즘 공부 (37)
      • Java 백준 문제풀이 (27)
      • Java 코테 나만의 팁 (3)
    • SQL Study (0)
      • Programmers SQL 문제풀이 (0)
      • SQLP 준비 (0)
    • 웹 개발 지식 정리 (0)
      • Servlet (0)
      • Java 정리 (0)
    • 자바 스프링 (45)
      • 스프링 공부 (4)
      • 스프링 게시판 프로젝트 (6)
      • 부트 블로그 JPA 프로젝트 (30)
      • react & springboot (5)
      • 스프링 오류창고 (0)
      • 리액트 + 스프링 프로젝트 (0)
      • pf (0)
      • pfError (0)
    • React (6)
      • React 정리 (3)
      • React 오류 창고 (3)
    • C++ 코딩테스트 공부 (중단) (20)
      • c++ 백준 문제풀이 (15)
      • c++ 알고리즘 공부 (5)
    • Unity (3)
      • Unity 공부 (3)
    • WebRTC (2)
      • WebRTC 강의학습 정리 (0)
      • WebRTC 프로젝트 (1)
    • 김영한님의 스프링 강의 학습 (10)
      • 스프링 강의 목차 (1)
      • 인텔리제이 & 스프링 기초 (1)
      • 스프링 핵심 원리 (8)
    • 전공 지식 정리 (40)
      • interview (0)
      • Java (0)
      • 운영체제 (4)
      • 데이터베이스 설계 (10)
      • 소프트웨어 공학 (3)
      • 유닉스 (14)
      • 디지털 논리회로 (0)
      • 인공지능 (7)
      • js (0)
      • etc (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • C++ 알고리즘
  • 스프링부트 블로그 프로젝트
  • 인공지능
  • 무서운 이야기
  • Java 백준 문제풀이
  • 김영한의 스프링 핵심 원리
  • 스프링 공부
  • java 알고리즘
  • 데이터베이스 설계
  • 부트 jpa 게시판 프로젝트
  • React&Spring 강의수강
  • 노마드코더의 zoom클론코딩
  • Java 코테 나만의 팁
  • 운영체제
  • Unity 공부
  • 백준 c++
  • 김영한 스프링 강의
  • 디지털 논리회로
  • 코테 알고리즘
  • 스프링 프로젝트
  • 김영한 스프링 입문
  • 유닉스
  • 스프링부트 프로젝트
  • java

최근 댓글

최근 글

hELLO · Designed By 정상우.
daramG
#1 Vi 편집기 명령어2
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.