<vi 편집기>
-vi 편집기의 3가지 모드-
1) Command Mode
: 가장 기본이 되는 모드, 삭제, 커서이동, 복사, 붙여넣기 등의 작업을 수행
2) Edit Mode
: 문서 작성, 수정 작업
3) Last Line Mode
: 파일의 내용을 저장, 종료, 특정패턴을 검색, 바꾸기

<vi 편집기의 사용법>
vi [파일명] : 파일명으로 vi 편집기 사용
Last Line | <- | Command | -> | Edit |
:, /, ? | i,a,o | |||
-> | <- | |||
ESC, Enter | ESC |
<Last Line모드 기본명령어>
! | 강제기능 |
:w | 내용저장 |
:q | 나가기 |
:q! | 저장하지 않고 나가기 (강제로 나가기) |
:w /경로 | 다른 이름으로 저장 |
<Command모드 – 커서이동>
h | 좌 |
j | 하 |
l | 우 |
K | 상 |
1G | 첫 줄로 |
G | 마지막 줄로 |
[n]G | n번째 줄로 이동 |
0 | 커서가 위치한 줄의 가장 왼쪽으로 |
$ | 커서가 위치한 줄의 가장 오른쪽으로 |
b | 한 단어씩 앞으로 커서 이동 |
w | 한 단어씩 뒤로 커서 이동 |
Command모드 - 문서편집
i | 커서가 위치한 곳 앞에서부터 문서 작성 |
a | 커서가 위치한 곳 뒤에서부터 문서 작성 |
o | 한 줄 아래에서부터 문서 작성 |
yy | 한 줄 복사 |
[n]yy | 커서가 위치한 곳에서부터 n줄 복사 |
p | 커서가 위치한 곳 아래에 붙여 넣기 |
x | 한 글자 삭제 |
dd | 한 줄 삭제 |
[n]dd | 커서가 위치한 곳에서부터 n줄만큼 삭제 |
r | 한 글자 치환 |
u | Ctrl+z (되돌리기) |
U | 커서가 위치한 줄의 모든 변경사항을 원래대로 되돌리기 |
d$ | 커서가 위치한 곳에서부터 한 줄의 끝까지 지우기 |
dG | 커서가 위치한 곳에서부터 마지막 줄까지 다 지우기 |
dw | 커서가 위치한 곳에서부터 한 단어 지우기 |
편집기 상태변경
:set nu | 줄 번호 표시 |
:set nonu | 줄 번호 표시 안 함 |
:set ic | 문자열 검색 시 대소문자 구분 안 함 |
:set noic | 문자열 검색 시 대소문자 구분 함 |
문자열 검색 및 변환
/[문자] | [문자]를 찾는다 |
n | 다음 검색 |
N | 이전 검색 |
?[문자] | /[문자]랑 역방향으로 찾는다 |
:%s/[찾을 것]/[바꿀 것]/g | 문자열 치환 |
<grep 명령어>
명령어 : grep [옵션] [문자열] [파일이름]
grep –n | 해당 문자열의 라인번호 표시 |
grep –i | 대소문자 구분 안 함 |
grep –v | 해당문자열을 제외한 정보 출력 |
grep –l | 해당 디렉토리의 파일에서 해당문자열이 있는 디렉토리 출력 |
- [문자열] -
^ | 문자열의 시작을 지정 ( grep ‘^k’ ./grep_1 ) |
. | 문자/문자열 대치 ( grep ‘solar.s’ ./grep_1 ) |
[문자열]$ | 줄의 마지막이 지정한 문자열인 것만 출력 ( grep ‘ksh$’ /etc/passwd ) |
* | 모든 것을 출력 |
[a-z,s] | 범위지정 |
Ex) grep ’[c-f,t,y-z]solaris’ ./grep_1
: c~f 또는 t 또는 y~z로 시작하는 solari 문자열을 찾아 출력
<egrep / fgrep 명령어>
1) egrep : 메타문자가 추가된 grep명령어
[문자열]+ | 특정문자열 뒤에 무엇인가 더 있다는 뜻 |
[문자열1] | [문자열2] | A 또는 B 검색 |
2) fgrep : 메타문자를 단순한 문자로 인식
Ex) fgrep ‘root*’ /etc/passwd
: root* 문자열을 검색하여 출력
<find 명령어>
명령어 : find [경로] [조건] [동작]
[조건]
name [이름] | 파일이름으로 검색 ( find / -name root ) |
perm [권한] | 파일의 권한으로 검색 |
size [크기] | 파일의 크기로 검색 ( find / -size 1) - 1 block = 512byte - (ex) find / -size +30000c (바이트크기로 검색) (숫자 뒤에 m, g 등 표기로 메가, 기가바이트 분류할 수 있음) |
mtime [시간] | 파일의 수정한 시간으로 검색 ( find ./ -mtime 1 ) |
atime [시간] | 파일의 접근한 시간으로 검색 |
<권한>
r : Read 읽기 권한
w : write 쓰기 권한
x : Execute 실행 권한
- : 권한없음
r w - | r - - | r - - |
소유자 | 그룹 | 그외 나머지 |
<파일 & 디렉토리 권한>
파일 | 디렉토리 | |
r | 파일의 내용 확인 (cat, more, head, tail) |
디렉토리의 내용 확인 (ls) |
w | 파일의 내용 수정 (vi 편집기) |
디렉토리 내의 내용 수정 (파일, 디렉토리 생성, 삭제, 이름 바꾸기, 복사, 붙여넣기, 이동) |
x | 실행 파일의 경우 실행여부 | 디렉토리에 접근 가능여부 (cd) |

<권한 바꾸는 명령어>
- chmod [바꿀 권한] [파일이름]
- chown [바꿀 소유자] [파일이름]
- chgrp [바꿀 그룹] [파일이름]
<권한을 바꾸는 모드 2가지>
Ex) rw- r-- r-- à rwx rwx rwx
1) Octal Mode | 2) Symbolic Mode |
표기 : chmod 777 test | 표기 : chmod u+x,g+wx,o+wx |
r w x r w x r w x 4 2 1 4 2 1 4 2 1 7 7 7 |
소유자 u+, u- r w x 그 룹 g+, g- r w x 그 외 o+, o- r w x |
*id : 현재 사용자를 확인하는 명령어
uid : 소유자번호

gid : 그룹번호
<umask>
- 디렉토리나 파일 생성시 기본 권한값에 대한 마스크값
- 설정 : umask [숫자] (777 : 보안성 취약 / 000 : 가용성 떨어짐 )
Ex) drwx r-x r-x : 777 –umask ( 777 – 022 ) : 755 -rw- r-- r-- : 666 –umask ( 666 – 022 ) : 644 |
'IT > OS' 카테고리의 다른 글
UNIX 프로세스 제어 및 작업관리 프로세스 종류 아카이브 (0) | 2024.01.16 |
---|---|
UNIX 특수권한 메타문자 (0) | 2024.01.16 |
UNIX 디렉토리 명령어 파일 명령어 링크 명령어 (0) | 2024.01.16 |
UNIX 유닉스의 역사 회사별 제품 x86특징 커널 쉘의 역할 기본명령어 (0) | 2024.01.16 |
가상머신 NAT 설정 (0) | 2017.11.22 |