출처 : https://www.youtube.com/watch?v=KvMd0Iccsuc&list=PLVsNizTWUw7FqN2gq79Cb3R6qkS7mqOJk&index=15
에디터 사용
- Linux에는 gedit, nano, vi 등 다양한 editor가 존재한다.
gedit 에디터
터미널에서 gedit을 입력하면 gedit 에디터가 실행된다. gedit은 windows의 메모장과 비슷한 에디터이다.
저장은 오른쪽 위에 저장을 누르면 된다.
특정 gedit 파일을 열고 싶다면 gedit + 파일명을 입력하면 된다.
Nano 에디터
다음은 nano 에디터를 알아보자. nano 에디터는 x window 환경 뿐만 아니라 일반 텍스트 모드 환경에서도 사용이 가능하다.
터미널에서 nano를 입력하면 nano 에디터가 실행된다. gedit과 마찬가지로 작성하고 싶은 내용을 작성하면 된다.
저장은 ctrl + x 를 누르면 '수정한 버퍼 내용을 저장하시겠습니까?' 라는 문구가 나온다. y를 누르면 저장이 되고, 저장할 파일명을 입력하면 된다.
gedit과 마찬가지로 내가 nano로 파일을 열고 싶으면 nano + 파일명을 입력하면 된다.
gedit은 왼쪽에 행 번호가 나오지만 nano 에디터는 행 번호가 나오지 않는다. 내가 현재 행 번호를 알고 싶으면 해당 행으로 이동한 다음 ctrl + c를 누르면 된다.
해당 파일을 수정하고 싶다면 그냥 수정을 한 다음에 ctrl + x 로 저장하면 된다.
만약 행을 보고 싶을 때 ctrl + c를 일일이 누르는 것이 귀찮다면 파일을 열 때 nano -c 파일명 을 입력하면 된다.
그러면 내가 ctrl c 를 입력하지 않아도 자동으로 현재 행 번호를 알려준다.
즉, 내가 nano 에디터를 사용할 때,
- 행 번호를 보지 않아도 되면 nano + 파일명을 입력하고
- 행 번호를 보고 싶으면 nano -c 파일명을 입력하면 된다.
vi 에디터
gedit 에디터는 x window 환경에서만 사용 가능하고 nano 에디터는 설치가 안 된 Unix/Linux 가 있다. 하지만 vi 에디터는 모든 Unix/Linux 환경에서 사용할 수 있는 에디터라는 특징을 가지고 있다.
터미널에서 vi 를 입력한다.
그러면 위 그림과 같이 vi의 초기 화면이 등장하는데 현재 화면에서는 입력이 되지 않는다.
현재 vi 에디터의 명령 모드에 있기 때문이다.
일단 vi 에디터에서 탈출해보자. ESC를 누른 다음 :q 엔터를 누르면 vi 에디터에서 나올 수 있다.
그러면 다시 터미널로 되돌아와진다.
이번에는 vi 에디터로 진짜 파일을 만들어보자. vi + 새로 만들 파일명을 입력한다.
새로운 txt 파일이 vi 에디터로 실행되게 된다.
처음에는 명령 모드여서 입력이 되지 않을 수도 있는데 그럴 때는 i 혹은 a를 누르면 밑에 끼워넣기라고 표시되면서 입력 모드로 전환되게 된다.
저장하고 나갈려면 다시 명령 모드로 전환해야 한다.
입력 모드에서 ESC를 누르면 명령 모드로 전환된다. 그리고 :w 를 입력하면 저장, :q는 나가기, :wq 는 저장하고 나가기가 된다.
처음에 그냥 vi로 입력했을 때에도 i를 입력해서 입력 모드로 전환한 다음 작성하면 된다.
단, 생성할 때 파일명을 정하지 않았으므로 저장할 때에 파일명을 추가로 입력해줘야한다.
vi 명령어
- vi 에디터 생성하기 : vi 혹은 vi + 새로 만들 파일명
- 명령 모드 -> 입력 모드 : a 혹은 i
- 입력 모드 -> 명령 모드 : ESC
- 저장하기 : :w
- 나가기 : :q
- 저장하고 나가기 : :wq
- 저장하지 않고 나가기 : :q!
- 기존의 특정 파일 vi 에디터로 실행하기 : vi + 기존 파일명
만약 vi 에디터가 비정상적으로 종료되었다면 어떻게 대처해야 할까? 예를 들어, 우리가 vi 에디터로 test1.txt 파일을
수정하고 있는데 갑자기 컴퓨터가 멈추거나해서 터미널이 강제로 닫혔다고 해보자.
그러면 다시 vi 에디터로 test1.txt 파일을 열면 어떻게 될까?
위 그림과 같이 나타나게 된다.
우리가 파일을 수정하면 swp 파일이 자동으로 생성되는데, 우리가 정상적으로 저장을 하거나 혹은 저장을 안하고 나가면 이 swp 파일은 자동으로 삭제가 되는데, 비정상적으로 종료되었으므로 swp 파일이 남아있게 되서 해당 메시지가 나타나게 되는 것이다.
일단 Q를 눌러서 나가보자.
ls -al 을 입력하면 test1.txt 파일과 .test1.txt.swp 파일이 둘 다 존재하는 것을 확인할 수 있다.
해당 swp 파일을 삭제하고 다시 test1.txt 파일을 vi 에디터로 실행하면
그러면 정상적으로 test1.txt 파일이 실행되고 우리가 수정했던 내용은 날라가게 된다. 그렇다면 우리가 내용까지 복구하려면 어떻게 해야 할까?
터미널을 강제로 닫아보자.
R을 눌러서 복구를 해보자.
swap 파일이 여러개가 있다 시간을 보고 3번 파일로 복구해보자.
엔터를 누른다.
원래 파일이 복구가 된다.
이제 비정상적 종료 메시지를 볼 필요가 없으므로 test1.txt.swp 파일들을 모두 제거한다.
그러면 우리가 vi test1.txt 파일을 열면 우리가 비정상적으로 종료하기 전에 파일이 실행되게 된다.
swp 파일들을 제거하지 않으면 그 메시지가 계속 등장하니 복구하든 안하든 무조건 삭제를 시켜주자.
도움말 사용법
- 'man 명령어(manual의 약자임)'를 사용하면 도움말 출력. ex) man ls
도움말 중 특정 단어를 검색하고 싶으면 /단어 를 입력하면 된다. q를 누르면 도움말이 종료되고 터미널로 돌아간다.
'Study > 이것이 리눅스다 with Rocky Linux 9' 카테고리의 다른 글
4장. 서버를 구축하는 데 알아야 할 필수 개념과 명령 (5) - 리눅스 기본 명령 (1) | 2023.12.18 |
---|---|
4장. 서버를 구축하는 데 알아야 할 필수 개념과 명령 (4) - 리눅스 필수 개념과 명령 : 마운트와 CD/DVD/USB의 활용 (1) | 2023.12.18 |
4장. 서버를 구축하는 데 알아야 할 필수 개념과 명령 (2) - 리눅스 필수 개념과 명령 : RunLevel, 자동완성 (0) | 2023.12.16 |
4장. 서버를 구축하는 데 알아야 할 필수 개념과 명령 (1) - 리눅스 필수 개념과 명령 : 시스템 시작과 종료, 가상 콘솔 (0) | 2023.12.16 |
Server 가상 머신 설정하기 (0) | 2023.12.14 |