Download presentation
Presentation is loading. Please wait.
1
리눅스 실습 정성훈
2
로그인 리눅스를 사용하기 위하여 밟는 승인절차 ID/PW 를 입력 계정 (account)은 슈퍼유저가 만들어 줌
3
패스워드 변경 기존의 패스워드를 새로운 패스워드로 변경 가능
4
기본 리눅스 명령 date: 날자 출력 cal : 달력출력 w: 상요자 출력
5
기본 리눅스 명령 (계속) uptime: 시스템 구동된 정보 출력 hostname : 시스템 이름 출력
6
기본 파일 명령어 pwd: 현재 디렉토리(폴더) 출력 cd : 디렉토리 변경 $ cd .. $ cd ikim
$ cd /u/ikim $ cd
7
기본 파일 명령어 (계속) ls: 디렉토리 내의 파일을 봄 $ ls –l $ ls -al 옵 션 설 명 -F
디렉토리는 파일이름에 /를 실행파일은 *을 링크된 문자를 붙여 출력한다. -a 디렉토리의 모든 파일을 출력한다. -l 파일의 자세한 정보를 출력한다. -t 변경된 시간을 기준으로 정렬한다.
8
기본 파일 명령어 (계속) -rw-r--r-- 1 mike 146 Sep 17 09:53 temp 파일의 종류 - 순수 파일
d 디렉토리 파일 c 특수파일(문자단위로 통신하는 하드웨어) b 특수파일(블록단위로 통신하는 하드웨어) l 다른 곳에 존재하는 파일과의 link 파일에 허락되는 액세스 종류 - 액세스가 허락되지 않음 r 파일을 읽을 수 있음 w 파일에 새로운 내용을 쓸 수 있음 x 파일을 실행시킬 수 있음 -rw-r--r-- 1 mike 146 Sep 17 09:53 temp
9
기본 파일 명령어 (계속) 디렉토리 생성 (mkdir)
10
기본 파일 명령어 (계속) 디렉토리 삭제(rmdir)
11
파일시스템 명령어 chmod를 사용하여 액세스 권한 변경하기 $ chmod 666 temp
액세스 권한 표현에 사용되는 8진수 값 400 파일 소유자가 파일을 읽을 수 있음 200 파일 소유자가 파일에 새로운 내용을 쓸 수 있음 100 파일 소유자가 파일을 실행시킬 수 있음 040 동일 그룹이 파일을 읽을 수 있음 020 동일 그룹이 파일에 새로운 내용을 쓸 수 있음 010 동일 그룹이 파일을 실행시킬 수 있음 004 기타 사용자가 파일을 읽을 수 있음 002 기타 사용자가 파일에 새로운 내용을 쓸 수 있음 001 기타 사용자가 파일을 실행시킬 수 있음 $ chmod 666 temp
12
파일시스템 명령어 (계속) rm 을 사용한 파일의 삭제 $ rm temp test1 $ rm -r manual
mv를 사용한 파일이동 $ mv filename directory $ mv /u/mike/temp /u $ mv /u/mike/temp /u/mike/test1 /u $ mv *.c /u
13
파일시스템 명령어 (계속) cp를 사용한 파일복사 $ cp test3.c test.c /usr2/97/102/hw3
$ cp *.c clib
14
vi 편집기 vi 시작 및 종료 $ vi filename ~ “filename" [New file]
15
Vi 모드
16
Vi 명령 콜론 명령 $ vi :w filename :e filename2 :r 삽입할 파일이름
17
Vi 명령 (계속) vi에서 편집의 시작, 저장 및 종료방법들 vi filename vi를 시작하고 filename을 편집
:e filename 편집 중 새로운 파일 filename을 편집 :e! filename 편집 중인 파일이 저장되지 않았어도 강제로 새 로운 파일을 편집 ZZ 편집한 파일을 저장하며 vi를 종료 :q! 변경내용 저장 없이 vi를 종료 :w vi에 있으면서 편집한 파일을 저장 :w filename filename 의 이름으로 파일을 저장 :w >> filename filename 에 편집버퍼의 내용을 추가 :1,20 w filename 1행부터 20행 까지를 filename의 이름으로 저장 :wq 저장 후 종료, ZZ와 같은 기능 :r filename filename을 읽어서 삽입 vi -R filename 혹은 view filename 읽기 전용 모드로 시작 vi -r filename 비정상적인 종료 후 저장되지 않은 내용 복구
18
Vi 명령 (계속) 커서의 이동 <space> → or l 한 문자씩 오른쪽으로 ← or h 한 문자씩 왼쪽으로
↓ or j 한 행씩 아래로 ↑ or k 한 행씩 위로 w 다음 단어의 첫 글자로 (단어는 공백이나 탭으로 구분) e 다음 단어의 끝 글자로 b 이전 단어의 첫 글자로 W, E, B w, e, b 와 동일 동작 (단 문장부호 무시) 행의 처음으로 (행은 <return>으로 구분) $ 행의 끝 부분으로 ^ 행의 공백이 아닌 처음 문자로 <return> or + 다음 행의 공백이 아닌 처음 문자로 - 이전 행의 공백이 아닌 처음 문자로 ) 다음 문장의 처음으로 (문장은 .으로 구분) ( 이전 문장의 처음으로 } 다음 문단의 처음으로 (문단은 공백 행으로 구분) { 이전 문단의 처음으로 H 화면 첫 행으로 M 화면 중간 행으로 L 화면 끝 행으로 <ctrl-u> 텍스트에서 반 페이지씩 위로 이동 <ctrl-d> 텍스트에서 반 페이지씩 아래로 이동 <ctrl-b> 텍스트에서 한 페이지씩 위로 이동 <ctrl-f> 텍스트에서 한 페이지씩 아래로 이동 Vi 명령 (계속) 커서의 이동
19
Vi 명령 (계속) 입력 및 변경 i 커서 앞에 텍스트를 삽입 a 커서 뒤에 텍스트를 삽입 I 행의 시작 부분에 텍스트를 삽입
행의 끝 부분에 텍스트를 삽입 O 현재 행 앞의 새로운 행에서 텍스트를 입력 o 현재 행 뒤의 새로운 행에서 텍스트를 입력 <esc> 명령어 모드로 복귀 r 한 문자 변경 R 커서 위치부터 원하는 곳까지 변경 s 하나의 문자를 여러 문자로 변경 cw 커서위치부터 한 단어를 변경 (c범위 가능) C 커서부터 행 끝까지 변경 S, cc 한 행 전체를 변경
20
Vi 명령 (계속) 삭제, 검색 및 치환 :line 한 행을 지정 :line1,line2
:1,. 첫 행부터 커서가 위치한 행까지 지정 (점은 현재 커서가 위치한 행을 가리킴) :.,.+10 커서가 위치한 행부터 10행 뒤까지 지정 :1,$ 전체 행을 지정 ($는 끝 행을 가리킴) :% 전체 행을 지정 (%는 전체 행을 가리킴)
21
Vi 명령 (계속) x 커서에 위치한 한 문자 삭제 X 커서 왼쪽 문자 삭제 D 커서 위치부터 행 끝까지 삭제 dmove
커서가 위치한 곳의 한 행 삭제 :lined 지정 행 삭제 :line,lined 지정 행 범위 삭제 dw 커서가 위치한 곳의 한 단어 삭제 d10w 커서가 위치한 곳부터 10 단어 삭제 db 커서가 위치한 곳의 한 단어 뒤로 삭제 d2) 커서가 위치한 곳부터 뒤로 두 문장 삭제 d5{ 커서가 위치한 곳부터 앞으로 다섯 문단 삭제 dG 커서가 위치한 곳부터 끝까지 모두 삭제 d1G 커서가 위치한 곳부터 처음까지 모두 삭제
22
Vi 명령 (계속) 검색 명령어 /xxx 아래로 xxx 문자열 검색 ?xxx 위로 xxx 문자열 검색 / 아래로 검색 ?
위로 검색 n 동일 방향 재 검색 N 반대 방향 재 검색 :set ic 대소문자 구분 하지 않고 검색 :set noic 대소문자 구분 하여 검색
23
Vi 명령 (계속) 정규 표현식 . <return>을 제외한 모든 단일 문자와 대응 *
0 또는 그 이상의 문자와 대응 ^ 줄의 시작과 대응 $ 줄의 끝과 대응 \< 단어의 시작과 대응 \> 단어의 끝과 대응 [ ] [] 안에 있는 문자 중 하나와 대응 [^ ] [] 안의 문자를 제외한 문자 하나와 대응 \ \ 뒤 문자를 일반문자로 해석
24
Vi 명령 (계속) 여러가지 치환 예 :s/Unix/UNIX 커서가 있는 행의 첫 번째 Unix만 UNIX로 치환
:1,10s/Test/test/g 첫 행부터 10번째 행까지 모든 Test를 test로 치환 :1,$s/Ch/Chapter/c :%s/Ch/Chapter/c 모든 행에서 Ch를 Chapter로 물어보면서 치환 (두 명령은 동일) :57s/book//g 57번째 행의 모든 book을 없는 것으로 치환(즉 삭제) :%s/test$/TEST/g 모든 행의 끝에 있는 test만 TEST로 치환 :20,45s/thi*/these/g 20 행부터 45행까지 thi가 있는 모든 문자열을 these로 치환 :%s/[^bB]est/test 모든 행에서 best나 Best 이외에 모든 문자est를 test로 치환
25
Vi 명령 (계속) 복사와 이동 모든 d 명령어 이동할 경우에 지우는 명령 yw 복사할 경우에 버퍼에 한 단어를 복사
yy 혹은 Y 복사할 경우에 버퍼에 한 행을 복사 nyy 혹은 nY n개의 행을 버퍼에 복사 p 단어의 경우 커서위치에 행의 경우 커서 다음 행에 붙이기 P 단어의 경우 커서위치 앞에 행의 경우 커서 윗 행에 붙이기 :i,jmk i 행부터 j 행까지를 k 행으로 이동 :i,jcok i 행부터 j 행까지를 k 행으로 복사
26
Vi 명령 (계속) 명령의 반복 및 취소 . 바로 전 수행한 명령의 반복 n. 바로 전 수행한 명령의 n 번 반복 u
바로 전 수행한 명령의 취소 U 특정 행에서 수행한 모든 명령의 취소
27
리눅스 프로그래밍 절차 Vi 등과 같은 editor로 C프로그램 작성 gcc 컴파일러를 이용하여 컴파일 수학 라이브러리의 삽입
예) vi test.c gcc 컴파일러를 이용하여 컴파일 gcc –o run test.c run (실행) 수학 라이브러리의 삽입 gcc –o run test.c –lm 여러 파일을 같이 compile Gcc –o run test1.c test2.c test3.c -lm Makefile 을 이용하여 compile (참고자료)
28
리눅스 프로그래밍 (계속) 간단한 예제) 화면에 hello world 를 출력 #include <stdio.h>
main() { printf(“hello world !!!\n”); } test.c 로 저장 gcc –o run test.c run 수행
Similar presentations