240 likes | 392 Views
UNIX Unbounded A Beginning Approach. 이 성 현 Home : nimilx2.hannam.ac.kr E-mail : shlee@netwk.hannam.ac.kr Tel : +82-42-629-7559. 목차. vi 편집기의 자세한 내용 텍스트 재정렬 vi 연산자의 영역 vi 의 버퍼 사용하기 커서 이동 키 vi 편집기의 사용자 정의 vi 고급 명령어 요약 질의 및 응답 실습. vi 편집기의 자세한 내용. vi 편집기 실행하기 vi 편집기 실행
E N D
UNIX UnboundedA Beginning Approach 이 성 현 Home : nimilx2.hannam.ac.kr E-mail : shlee@netwk.hannam.ac.kr Tel : +82-42-629-7559
목차 • vi 편집기의 자세한 내용 • 텍스트 재정렬 • vi 연산자의 영역 • vi의 버퍼 사용하기 • 커서 이동 키 • vi 편집기의 사용자 정의 • vi 고급 명령어 • 요약 • 질의 및 응답 • 실습
vi 편집기의 자세한 내용 • vi 편집기 실행하기 • vi 편집기 실행 • $ vi [Enter] • $ vi 파일명 [Enter]
vi 편집기의 자세한 내용 • vi 옵션 사용 • 옵션의 사용을 통해 다양한 융통성을 제공 • 읽기 전용(Read-Only) • -R 옵션을 사용 • 읽기 전용으로 만들어 파일의 내용이 사고로 변경되지 않도록 유지
vi 편집기의 자세한 내용 • vi 옵션 사용 • 읽기 전용 파일 닫기 • :wq! • :q! • 파일 보기 • 일기 모드에서만 vi 편집기를 사용하기 위한 명령어 • view는 항상 읽기 모드에서만 시작할 수 있는 vi 버전 • $ view myfirst • $ vi –R myfirst
vi 편집기의 자세한 내용 • vi 옵션 사용 • -c 옵션 • 사용자에게 명령어 라인의 일부분으로 특별한 vi 명령어가 되도록 해줌 • 편집을 시작하기 전에 커서의 위치를 지정하거나 파일에 들어 있는 패턴을 찾는데 유용한 옵션 • $ vi –c /most myfirst [Enter]
vi 편집기의 자세한 내용 • 다중 파일 편집 • vi를 실행시킬 때 여러 개의 파일명을 인수로 사용 • 하나의 파일 편집을 마치고 나서, vi 편집기를 다시 실행하지 않고 다음 파일의 편집을 시작할 수 있다 • :n 명령이 주어지면 다음 파일의 내용을 버퍼에 옮겨 놓음 • $ vi myfirst mydate.list • :n
vi 편집기의 자세한 내용 • 다중 파일 편집 • 다른 파일 편집 • 새로운 파일로 전환하기 위한 옵션 • :e 파일명[Enter]
vi 편집기의 자세한 내용 • 다중 파일 편집 • 다른 파일 읽기 • 현재 편집중인 파일로 다른 파일을 읽어 들일 수 이다 • :r 파일명[Enter] • 현재 커서가 위치한 곳으로 파일을 읽어 들임 • 지정한 파일은 현재 편집중인 파일이 일부가 된다
vi 편집기의 자세한 내용 • 다중 파일 편집 • 다른 파일에 쓰기 • 현재 편집중인 파일의 일부분은 다른 파일로 저장 • :1, 2 w temp[Enter]
텍스트 재정렬 • 텍스트 제정렬 • 지우기, 복사하기, 이동하기, 오려두기, 붙이기 등의 동작의 조합 • 모든 명령은 vi 명령 모드에서 사용
텍스트 재정렬 • 텍스트 재정렬 명령 • 줄 이동 • dd : vi의 현재 줄을 지우고, 임시 버퍼에 저장하고 U로 커서를 이동한 • p : vi 현재 줄 아래에 지워진 줄을 붙인다 • P : 지워진 줄을 현재 줄의 위쪽에 붙인다 • 줄 복사 • yy : 현재 라인을 임시 버퍼에 복사 • p : 임시 버퍼의 내용을 현재 줄의 아래에 붙인다 • P : 임시 버퍼에 있는 내용을 현재 줄 위쪽에 붙인다
vi 연산자의 영역 • vi 연산자 • 대부분의 vi 명령들이 문자단위로 동작 • vi 명령을 영역키와 조합하여 사용할 경우 편집 작업이 용이 • 명령 = 연산자 + 영역
vi의 버퍼 사용하기 • vi 편집기의 버퍼 • 임시 저장을 위해 몇 개의 버퍼를 사용 • 임시 저장 버퍼는 복사된 파일의 내용을 유지하는데 필요 • 숫자 버퍼와 이름 버퍼라는 두 종류의 버퍼가 사용 • 번호가 붙여진 버퍼 • 1에서 9까지의 번호가 붙은 9개의 임시 버퍼를 사용 • 삭제와 복사 연산시 임시 버퍼에 저장되며, 버퍼의 번호를 명시하여 해당 버퍼에 접근할 수 있음 • 버퍼의 사용 • 삭제 연산(dd)를 통해 지워진 줄은 버퍼에 저장 • 해당 버퍼의 내용을 돌리고 싶은 경우에는 “버퍼 번호 + p”연산자를 사용 • ex : 9p(9번 버퍼의 내용을 되돌림)
vi 버퍼 사용하기 • 문자 버퍼 • vi 편집기는 26개의 이름 버퍼를 사용 • a ~ z까지 소문자로 명명되며, 이름을 나열하여 각 버퍼를 참조할 수 있다 • 파일을 지우거나 복사를 실시하는 매 번 마다 각 버퍼의 내용은 바뀌지 않는다는 점을 제외하면 숫자 버퍼와 동일한 기능을 수행 • 연산자를 제어할 수 있는 더 많은 기능을 제공 • 사용 예 • wdd : 현재 라인을 지우고 버퍼 w에 그 복사본을 저장 • wp : 버퍼 w의 내용을 커서 위치에서 지시된 위치에 복사 • z7yy : 7라인을 버퍼 z에 복사하기 위해 사용 • zp : 버퍼 z의 내용을 커서 위치에서 지시된 위치로 복사하기 위해 사용
커서 이동 키 • 커서 이동 • vi 편집기는 한번에 24줄의 텍스트가 출력 • 파일의 크기가 클 경우 해당 라인으로 이동하는 방법이 요구됨 • 페이징 연산자를 통해 라인 이동
vi 편집기의 사용자 정의 • 사용자 정의 • 사용자가 작업 환경을 제어하기 위해 사용/사용하지 않음으로 설정할 수 있는 많은 매개변수가 존재 • 옵션들은 기본 값을 가지고 있지만, 조정을 통해서 설정할 수 있다 • 현재 시스템의 설정 내용 보기 • :set all
vi 편집기의 사용자 정의 • 옵션 형식 • set 명령 • 옵션을 설정하기 위해 사용 • 옵션은 각각 다른 방법으로 설정되는 세 가지 범주로 나뉘어진다 • boolean(toggle) • on/off 되는 토글 스위치와 같이 동작 • set X라고 입력하면 사용 가능, set noX라고 입력하면 옵션 사용 불가 • numeric • 숫자 값을 받아들이고 숫자 값에 의존 • set X=12는 12를 옵션 값으로 할당 • string • 숫자 옵션과 비슷하나, 숫자 대신 문자열을 입력 받음 • set X=pp 는 각 명령어 형식을 완성한 후 [Enter]키를 입력으로 받음
vi 편집기의 사용자 정의 • vi 환경 설정 • vi 편집기의 매개변수를 새로운 값으로 편집하여 사용자 정의 될 수 있고 사용자가 이의 값을 바꿀 수 있다 • set 명령을 사용 • 환경 옵션 변수
vi 편집기의 사용자 정의 • 줄 길이와 wraparound • 단말기 화면은 일반적으로 80컬럼을 출력 • wraparound • 줄의 끝에 도달했을 경우 자동으로 새로운 줄에서 시작하는 기능 • vi 편집기에서는 [Enter]키를 눌렀을 경우에만 새로운 줄로 인식 • 옵션 사용의 결과 자동으로 [Enter]키를 누르는 것과 같은 효과 • 단축과 매크로 • 명령을 빠르게 입력하는 방법을 제공 • :ab, :map와 같은 기능의 단축키 제공 • .exrc 파일 • 모든 옵션은 vi 편집기가 실행되는 동안에만 유효 • .exrc라는 파일에 설정한 옵션을 저장할 수 있는 방안을 제공
vi 고급 명령어 • shell 명령 실행하기 • 유닉스 쉘의 명령을 vi 명령줄에서 실행시킬 수 있음 • ! 연산자의 사용 • :!date : 현재 시간을 표시 • :!ls : 현재 디렉토리의 파일 목록을 보여준다 • !pwd : 작업 디렉토리의 위치를 보여준다 • 기타 !를 사용하여 쉘 명령어 사용 가능 • 줄 결합하기 • J를 사용하여 두 줄을 결합할 수 있음 • 현재 줄과 바로 아래줄을 결합하는 것으로 커서 위치 오른쪽으로 텍스트가 위치 • 찾기와 바꾸기 • /, cw, ., ?, dw, n 등의 연산자를 사용
요약 • vi 편집기의 확장 명령어의 사용 방법 • vi 연산자의 활용 • vi 편집기의 사용자 정의 • vi 편집기의 고급 명령어 활용
실습 • myfirst 파일을 vi 로 읽어 들여 교재의 다양한 내용을 실습