티스토리 뷰
파일을 열어보고 편집, 저장 시 가장 많이 사용하게 되는 vi 편집기입니다.
1. vi 편집기 사용하기
"명령 모드 + 입력 모드 구분이 중요"
명령 모드
esc로 명령 모드 진입
line 표시 | :se nu 행 번호 표시:se nonu 행 번호 표시 해제 |
줄 단위 이동 | gg 파일의 가장 첫 줄로 이동G 파일의 가장 마지막 줄로 이동5000G 5000번째 줄로 이동300 현재 줄 + 300번째 줄로 이동 |
줄 단위 복사 | yy 커서가 위치한 해당 줄 복사5 yy 다섯 개의 줄 복사 |
붙여넣기 | p |
삭제 | dd 커서가 위치한 해당 줄 삭제5 dd 다섯 개의 줄 삭제 |
모든 작업 취소 | u :q! 편집기에서 빠져나가기 |
검색 | :/Network 파일에서 Network 문자열 검색n 누르면 아래로 검색 결과N 누르면 위로 검색 결과를 보여줌 |
커서 이동 | 방향키 or ajkl *** Linux 종류에 따라 방향키 입력이 불가능한 경우 존재! |
저장 | :wq! 편집내용 저장 후 빠져나가기 |
명령어 실행 | :![명령어] 편집기를 빠져나가지 않으면서 명령어 실행 |
*** vi 편집기로 파일 수정을 하고 ctrl 키 등을 잘못 눌러 이상 종료했을 경우 .swp 파일이 생깁니다.
생성 후 강제도 닫았던 파일 ⇒ 읽기 모드로 열리기 때문에 꼭 .swp 파일을 확인하고 삭제해 주어야 정상 작업이 가능합니다.
:1s/services/test/
# 1번째 줄의 services 문자열을 test로 변경
:%s/text/services/g
# 이 파일의 처음부터 끝까지 test 문자열을 services로 변경
:1,$s/test/services/g
# 1번째 줄부터 파일의 끝($s)까지 test 문자열을 services로 변경
:1co6
# 1번째 줄을 6번째 줄로 복사 (커서 이동 없이 복사 가능)
:1,5co1000
# 1번째 ~ 5번째 줄까지를 1000번째 줄에 복사
:1,5000d
# 1번째 ~ 5000번째 줄까지 삭제
:!ls -al
# 편집기 나가지 않고도 ls -al 명령어 실행
입력 모드
입력 모드 진입은 a, i, o - 주로 모음에 해당하는 알파벳으로 가능합니다.
a | 커서 오른쪽에 입력 |
A | 커서 오른쪽, 해당 줄의 맨 끝에서 입력 |
i | 커서 왼쪽에 입력 |
I | 커서 왼쪽, 해당 줄의 맨 앞에서 입력 |
o | 커서 아래 행에 입력 |
O | 커서 윗 행에 입력 |
vi 편집기를 잘 다룰 수 있도록 연습해야 다양한 설정 파일을 수정, 원하는 작업을 자유롭게 할 수 있습니다.
기본 명령어와 vi 편집기에 익숙해질 것 !
2. vim과 alias 등록하기
vim 역시 linux 편집기이며, vi보다 향상된 버전으로 가시성이 좋아 편리합니다.
이미 vi 명령어에 익숙해졌다면, alias를 이용한 별칭 등록을 할 수 있습니다.
alias
명령어를 간소화해 다른 이름(별칭)으로 사용할 수 있도록 하는 명령어
alias vi='vim'
vi 명령어 입력 시 vim으로 인식하도록 설정
*** 영구 등록 시(=reboot 시에도 이 alias 설정을 저장하려면) 설정 파일에 등록이 필요합니다!
현재 로그인되어 있는 쉘에 한정하여 적용하는 경우 ./bashrc에, 모든 사용자에게 다 적용을 원한다면 /etc/profile에 다음 내용을 등록해주면 됩니다.
'Linux' 카테고리의 다른 글
[Ubuntu] 우분투 20.04 LTS 화면 freezing 문제 해결 (0) | 2023.04.06 |
---|---|
[Linux] 파일 시스템과 Link (Hard Link, Symbolic Link, inode, MAC time) (0) | 2023.03.26 |
[Linux] 기본 명령어(경로 이동, root directory, 파일 생성) (0) | 2023.03.23 |
[Linux] 구성 환경: Network Setting (0) | 2023.03.13 |
[Linux] 구성 환경: VMWare + Rocky9 Setting (0) | 2023.03.12 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Vmware
- 에티버스러닝
- IAC
- Route53 비용 정책
- AWS
- RECA
- kubernetes
- Linux
- Docker
- Window Server Manager
- Route53
- ycampus
- vsphere
- VPC
- 클라우드 DNS 서비스
- redhat
- EKS
- Local Zones
- VM Tools
- aws cli
- Ansible
- Azure DNS
- Git
- Google Cloud DNS
- github
- Windows Server
- k8s
- kubectl
- rocky9
- IAM
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함