Presentation is loading. Please wait.

Presentation is loading. Please wait.

UNIX 편집기의 운영 방식 vi편집기 사용법 연습 문제

Similar presentations


Presentation on theme: "UNIX 편집기의 운영 방식 vi편집기 사용법 연습 문제"— Presentation transcript:

1 UNIX 편집기의 운영 방식 vi편집기 사용법 연습 문제

2 UNIX 편집기의 운영 방식 편집기를 통한 파일의 수정 버퍼를 사용한 방식의 장점 버퍼를 사용한 방식의 단점
원래의 파일은 훼손되지 않게 남겨두고, 대신에 그 파일의 복사판을 만들어 임시 기억 장치에 둠 임시 기억 장치는 편집기를 위한 버퍼(buffer) 역할을 함 즉, 편집기를 통한 파일에 대한 변화 내용은 복사된 파일에 나타내어짐 편집한 파일의 내용을 보존하고자 할 때는 기록 명령어를 사용함으로써 원래의 파일이 수정된 내용의 것으로 대치됨 버퍼를 사용한 방식의 장점 사용자가 편집에 있어 많은 과오를 범했을 때 그 내용을 기록함 없이 중지할 수 있으므로 원래의 파일을 보존할 수 있음 버퍼를 사용한 방식의 단점 외부적인 원인으로 편집기가 갑자기 중지되었을 경우에는 변화된 내용이 자동적으로 기억되지 않기 때문에 변화된 내용을 모두 잃어 버리게됨

3 UNIX 편집기의 운영 방식 편집기의 운영 모드 대표적인 편집기 명령어 모드(command mode)
편집기에 들어가면 명령어 모드에 놓이게 됨 키보드를 통해 입력되는 문자는 편집기에 대한 명령어로 해석됨 기록 명령어를 사용하여 변경된 파일의 내용을 저장하고 종료 명령어로 편집기를 빠져 나올 수 있음 텍스트 (문안) 입력 모드(text input mode) 편집을 위한 명령어에 의해 텍스트 입력 모드에 들어가게 됨 입력되는 모든 문자는 버퍼에 기록되어야 할 자료로서 받아들여짐 명령어 모드로 가기 위한 특별한 명령어가 편집기마다 존재 예) vi 편집기: Esc 키 대표적인 편집기 vi ed emacs

4 UNIX Shell 명령어 모드 명령어 모드 UNIX Shell 입력 모드 입력 모드 빠져나옴
<편집기의 두 운영 모드> UNIX Shell “vi 파일이름” 으로 편집기 실행 명령어 모드 입력 모드 부가 삽입 치안 제거 이동 복사 인쇄 키보드로부터 자료등을 입력 명령어 모드 <ESC>키 이용 입력 모드 빠져나옴 파일을 저장하고 편집기를 빠져나옴 UNIX Shell

5 vi편집기 사용법 vi 편집기 vi 편집기 시작 버클리 의 BSD 유닉스 용으로 개발됨 System V의 기본 유틸리티로 채택
실제로 모든 유닉스 시스템에서 사용됨 vi 편집기 시작 아무런 인수없이 vi 입력 존재하는 파일을 편집하기 위해선 인수로서 파일명을 입력

6

7 vi편집기 사용법 vi 편집기 모드 텍스트 입력 모드 명령 모드 텍스트 입력 모드
텍스트 입력 모드 텍스트 입력 모드 다음 표에 나타난 키 중 하나를 눌러서 명령 모드에서 텍스트 모드로 전환 수행 i 텍스트가 커서 앞에서 삽입된다 a 텍스트가 커서 뒤에서 삽입된다 o 텍스트가 현재 줄 다음부터 삽입된다 O 텍스트가 현재 줄 앞에서 삽입된다 R 텍스트가 대치된다(겹쳐 써진다)

8 vi편집기 사용법 다음 줄로 이동하기 위해서 엔터키를 침 입력된 마지막 문자를 지우기 위해서 백스페이스 키를 이용
텍스트 입력 모드에서 명령 모드로의 전환은 Esc 키를 누름으로써 가능 인수를 갖지 않는 vi로 파일 작성 시작 텍스트 입력 모드 상에서 문자들을 입력하려고 a 키를 누름 Esc 키를 눌러 명령 모드로 되돌아 옴

9 vi편집기 사용법 명령 모드 텍스트를 편집하기 위해서는 명령 모드에 있어야 함
텍스트 입력 모드에서 명령 모드로 전환하기 위해서는 Esc키를 누름 명령 모드에서 실수로 Esc 키를 누르면 아무 일도 발생하지 않음 vi 편집 특성은 특수한 문자들을 연속적으로 누름으로써 선택됨 예) 한 단어를 지우려고 할 때 그 단어의 첫 문자 위치로 커서를 이동한 다음 d 키를 누르고, 곧이어 w 키를 누름 일부 편집 특성은 인수를 요구하며, 콜론(:)키를 누른 다음 곧이어 명령과 엔터 키를 누름으로써 가능 콜론 키가 눌러졌을 때, 명령 입력 줄이 화면의 맨 아래 부분에 나타남 예) 첫번째 줄에서부터 세번째 줄까지를 모두 지우려면 다음과 같은 명령열을 입력한다. :1,3d<Enter> 블록 지우기 명령과 같은 일부 편집은 줄 단위로 처리됨 vi의 줄 단위로 범위를 지정하는 형식 한 줄을 선택하려면 그 줄 번호를 지정 줄 단위로 블록을 선택하려면 첫 줄 번호와 마지막 줄 번호를 콤마로 분리 지정

10 vi편집기 사용법 vi에서는 파일의 마지막 줄 번호를 대신하는 표기로 $를 사용
현재 커서가 있는 줄 번호를 대신하는 표기로 .을 사용 줄 번호의 상태를 나타낼 때 산술식을 이용할 수도 있음 예)현재 커서가 있는 줄과 다음의 두 줄을 지움 :.,.+2d<Enter> 범위를 지정하는 다른 예들 범위 선택 1,$ 파일 내의 모든 줄 1,. 파일의 첫 줄에서부터 현재 줄까지의 모든 줄 .,$ 현재 줄에서부터 파일의 마지막 줄까지의 모든 줄 .-2 현재 줄부터 앞쪽으로 두번째에 해당하는 한 줄

11 vi편집기 사용법 일반적인 편집 특성 커서 이동 텍스트 지움 텍스트 치환 텍스트 붙이기 텍스트 탐색 텍스트 탐색/치환
파일의 저장/불러오기 기타(vi 빠져나오기 등을 포함) 기본적인 커서 이동 명령은 다음 표에서 제시 예)네번째 줄에 있는 “Like”라는 단어 앞에 “Just”라는 단어를 삽입하라. 네번째 줄 첫 위치로 이동한 후, 텍스트 입력 모드로 바꾸기 위해 i키를 누름 :4<Enter> 명령을 이용하여 네번째 줄로 커서를 이동할 수 있음 “Just”를 입력하고, Esc 키를 눌러 명령 모드로 되돌아감

12 vi편집기 사용법 이동 키 순서 한 줄 위로 <cursor up> 또는 k 한 줄 아래로
<cursor down> j 한 문자 오른쪽으로 <cursor right> l 한 문자 왼쪽으로 <cursor left> h 줄의 시작으로 ^ 줄의 마지막으로 $ 한 단어 앞으로 b 한 단어 뒤로 w 반 화면 아래로 Control-D 한 화면 아래로 Control-F 반 화면 위로 Control-U 한 화면 위로 Control-B 줄 번호 nn 위치로 :nn<Enter>

13 vi편집기 사용법 네번째 줄로 이동 커서를 이동하여 첫번째 문자로 이동하여 i키로 텍스트 입력 모드 전화하고
입력을 마친 다음 Esc키로 명령 모드로 돌아감 네번째 줄로 이동

14 vi편집기 사용법 텍스트 지우기 예) 다음 파일에서 “always”라는 단어와 rains의 s자를 지워라 순서:
1)”always”가 있는 줄로 이동하기 위해 :1<Enter>를 타이핑 2)한 단어 뒤로 커서를 옮기기 위해 w를 누름 3) “always”를 지우기 위해 dw를 누름 4)”s”를 지우기 위해 커서를 문자”s”위로 이동하고 x키를 누름 지울 대상 키 순서 문자 문자 위에 커서를 위치시키고 x를 누른다 단어 단어 시작 부분에 커서를 위치시키고 dw를 누른다 줄 위의 아무 곳에나 위치시키고 dd를 누른다 현재 줄의 끝까지 D를 누른다 블록 단위의 줄 :<range>d <Enter>

15 vi편집기 사용법 결과

16 vi편집기 사용법 텍스트 치환 예) “standing”이란 단어를 “walking”이란 단어로,”damp”를 “dark”로 ”slide”를 ”slip”으로 치환하라 순서 1)”standing”의 첫 문자 위치에 커서를 두고 cw라고 타이핑 2)“walking”이라고 타이핑한 수 Esc키를 누름 3)지우고자 하는 문자의 위치에 커서를 두고 r키를 누른 다음 치환하고자 하는 문자를 타이핑 치환 대상 키 순서 문자 문자 위에 커서를 위치시키고 r을 누른 다음 치환할 문자를 타이핑한다 단어 단어의 첫 위치에 커서를 두고 cw를 누른 다음, 치환할 텍스트를 타이핑하고 Esc 키를 누른다 줄의 아무 위치에나 커서를 위치시키고 cc를 누른 다음, 치환할 텍스를 타이핑하고 Esc키를 누른다.

17 vi편집기 사용법 결과

18 vi편집기 사용법 텍스트 붙이기 예) 처음 두 줄을 붙이기 버퍼로 복사한 다음, 세번째 줄 다음에 그 내용을 붙여라 순서
1):1,2y<Enter> 2):3pu 붙이기 동작 키 순서 줄을 붙이기 버퍼로 복사(yank) :<range>y<Enter> 현재 줄 다음에 붙이기 버퍼의 내용을 삽입(put) :pu<Enter> (붙이기 버퍼의 내용은 변하지 않는다) 줄 번호 nn번 다음에 붙이기 버퍼의 내용을 삽입 :nnpu<Enter> (붙이기 버퍼의 내용은 변하지 않는다)

19 vi편집기 사용법 원래 상태로 되돌리기 위해서는 :4,5d<Enter>를 입력

20 vi편집기 사용법 탐색 예) 첫번째 줄부터 “ark”라는 문자열을 찾아라 순서 1):1<Enter>
탐색 동작 키 순서 현재 위치에서 파일의 뒤쪽으로 문자열 sss를 탐색 /sss<Enter> 현재 위치에서 파일의 앞쪽으로 문자열 sss를 탐색 ?sss<Enter> 마지막 탐색 명령을 반복 n

21 vi편집기 사용법 “ark”라는 문자열이 있는 줄의 처음에 커서가 이동

22 vi편집기 사용법 탐색/치환 예) 문자열 “re”를 모두 “XXX”로 바꾸어라 탐색/치환 동작 키 열
각 줄 중 sss가 처음 발견된 주만 ttt로 치환한다 :<range>s/ sss/ ttt/<Enter> 각 줄 중 sss가 발견되면 모두 ttt로 치환시킨다 :<range>s/ sss/ ttt/g<Enter>

23 vi편집기 사용법 파일의 저장/불러오기 Vi는 파일을 저장할 때 그 파일의 저장 크기를 바이트 단위로 사용자에게 제공
파일 저장/불러오기 동작 키 순서 <이름>으로 파일을 저장 :w<이름> <Enter> 현재의 이름으로 파일을 저장 :w<Enter> 현재 파일 대신에 <이름>의 파일을 편집 :e<이름><Enter> 초기 명령 줄 상에 주어진 파일 중 다음 순서의 파일을 편집 :n<Enter>

24 예) 편집한 파일을 “rain1.doc”로 저장하라
vi편집기 사용법 예) 편집한 파일을 “rain1.doc”로 저장하라

25 vi편집기 사용법 그 밖의 명령 Vi 끝내기와 같은 가장 일반적인 여러 가지 목록을 다음과 같다 동작 키 순서
화면을 다시 그린다 Control-L 서브셸에서 명령을 실행한 다음 vi로 되돌아간다 :!<명령><Enter> 만일 작업 내용을 저장하였다면 vi를 빠져나간다 :q<Enter> 작업 내용을 저장않고 vi를 빠져나간다 :q!<Enter>

26 연습 문제 1. 명령어 모드와 텍스트 입력모드에 대해 설명하여라 2. Vi의 기본적인 이동을 위한 키를 ( )에 써 넣어라
( ) 커서 ( ) ( ) ( )

27 연습 문제 3.다음과 같은 내용의 파일이 있다고 가정할 때 1)부터 7)까지의 물음에 대한 적합한 vi 명령어를 써고 직접 파일을 변경하라.

28 연습 문제 1)파일 전체를 통해서 “unix”라는 단어를 “UNIX”로 바꾸어라.
2)두 번째 나타나는 “software”라는 단어를 제거하라. 3)”users” 다음에 “, who may be carrying out different tasks”라는 구절을 삽입하라. 4)파일의 끝에 다음 내용을 첨가하라. “Furthermore, the UNIX system includes very effective tools for writing software.” 5)다음 문장을 파일의 처음에 첨가하라. “The UNIX family has greatly increased the flexibility of the operating system” 6)6행부터 10행까지의 내용을 part라는 파일에 기록하여라. 7)파일의 두번째 문장을 제거하라.


Download ppt "UNIX 편집기의 운영 방식 vi편집기 사용법 연습 문제"

Similar presentations


Ads by Google