Download presentation
Presentation is loading. Please wait.
1
정보검색 환경세팅 및 쉘스크립트 맛보기 IS lab. 김건영
2
Orientation http://hagazzusa.github.io/ 추가 발표 자료 및 각종 링크들
추가 발표 자료 및 각종 링크들 실습점수는 교수님 정보검색 페이지 하단에 있는 과제로 계산
3
To do 리눅스 shell 익숙해지기 Sed, Awk 쓸 줄 알기 Posting list 생성 Python 언어
Scoring 정보검색기 구현 CGI 프로그래밍 ->파이썬 bottle 웹 프레임워크 써보기
4
5~17 page 5~17 page는 윈도우에서 본 수업을 진행하고자 한다면 참고바람
본 수업은 학교서버 (cs1.kangwon.ac.kr) 사용을 추천
5
Python 2.7 설치 https://www.python.org/download/releases/2.7/
C:\python27\ 폴더로 설치
6
MinGW 설치
7
MinGW 설치 Continue 계속 누르기 (설치 경로 기억, or 쉬운 곳에 설치) 이 창이 나오면 멈춤
8
MinGW 설치
9
MinGW 설치
10
MinGW 설치
11
MinGW 설치
12
환경변수설정
13
환경변수설정
14
환경변수설정
15
환경변수설정 Python과 mingw 디렉토리 둘 다 추가 (;)세미콜론으로 디렉토리 구분
;c:\python27;c:\mingw\bin
16
Python 테스트 폴더 하나 만들어서 test.py 생성 print(“hellow, world!”) 작성
왼쪽 shift를 누른 채 우클릭 후 여기서 명령창 열기 클릭 python test.py 작성 후 엔터
17
MinGw 테스트 아까 열어둔 CMD 창에서 ls 실행 파일 리스트가 열리면 제대로 설치된 것
만약 Cygwin’s heap 문제가 뜰 경우 조교 홈페이지에 Cygwin’s heap 문제 해결 링크 참조 *.sh 파일(쉘 스크립트)을 쓰려면 아래 링크 참조 do-i-run-mingw-with-a-script
18
쉘 스크립트란? 쉘 : 운영체제와 사용자 사이에 있는 명령어 해석기
쉘스크립트 : 명령어, 유틸리티, 실행파일 등을 묶어서 쓰 기 쉽게 만들어주는 하나의 언어
19
기본 명령어들 ls : 파일 목록을 보여주는 명령어 띄워쓰기 후-r , -l, -a, -la 등을 붙여서 실행해보자
echo : 뒤에 오는 문자열을 출력해주는 명령어 echo “hellow world!” cat : 파일을 처음부터 읽는 명령어 Head, tail –n 숫자: 숫자만큼 해당 파일의 줄을 읽는 명 령어 Mkdir : 폴더 생성, rmdir: 폴더제거 Chmod : 파일의 권한을 변경
20
기본명령어들 Grep : 주로 파이프라인과 같이 사용되며 해당 단어가 있 는 줄만 출력해준다.
Sort : 파일 혹은 텍스트 스트림을 정렬해준다. Wc: 파일의 단어, 줄, 문자 등의 개수를 구해준다. Tee [file_path] : 출력을 file_path로 저장하면서 화면에 띄운다.
21
Pipeline, redirect Echo “11+9”와 echo “11+9” | bc 를 적어보자
|은 파이프라인으로 앞의 명령어의 결과를 뒤의 명령어 로 넘겨준다. Echo “hellow world!” > test.txt >은 redirect로 stdout(화면)으로 나가는 출력을 > 뒤에 오는 파일명으로 바꿔준다. >은 덮어쓰기, >>은 이어쓰기 Echo “1+2+3” > t1후 bc < t1 <은 해당 파일의 내용을 프로그램으로 넘겨준다.
22
redirection > 은 기본적으로 stdout 만을 잡아줌
>앞에 linux의 파일서술자 번호를 적어주면 stderr 출력 도 파일로 저장가능하다. 0 = stdin, 1 = stdout, 2 = stderr cat txt.txt 1> /dev/stderr : txt.txt의 파일내용을 stdout이 아닌 stderr로 출력
23
#! 으로 시작하기 .sh 파일의 첫 줄에서 #!은 어떤 명령어 해석기를 써야 하 는지 shell에게 알려주는 역할을 한다. #!/bin/sh #!/usr/bin/perl #!/bin/sed –f Vim을 써서 다음과 같이 적어보자
24
#! 으로 시작하기 .sh파일을 저장하고 나와서 ./파일이름.sh로 실행해보자
Chmod 로 파일 권한을 바꿔줘야 쉘 코드를 실행 시킬 수 있다. Chmod 700 파일 이름 으로 권한을 바꿔주고 실행해보 자
25
변수 다음과 같이 적고 실행해보자 변수의 선언은 $없이 =좌우 사이를 붙여서 선언한다. 이후 선언한 변수를 쓰려면 변수명 앞에 $을 붙여 쓴다. 다시 변수에 새로운 값을 할당할 때에도 $을 쓰지 않는다.
26
변수 ./sh의 모든 변수는 문자열기반 옆의 코드는 11+9가 출력됨 -> 명령어 해석기인 shell을 기초로 하기 때문
리눅스 계산기인 bc 명령어 로 파이프를 연결하여 해결
27
명령어의 결과를 변수로 키보드 1 옆에 있는 `로 명령어를 감쌈 or 3번째 줄과 같이 선언시 명령어의 결과가 저장됨
28
If문 If [condtion] then command else command fi
이외의 방법들은 명령어들을 실행하고 그 결과값을 써서 비교하므로 쉘에 익숙해지면 알아보자.
29
루프, for, while C나 Java의 for문과는 다름, foreach와 비슷
for arg in [list] do command... Done while [condition] do command... done 이중소괄호로 C와 비슷하게 구현가능
30
조건과 루프 구구단 3의 배수만 출력하기
31
마지막으로 쉘 스크립트를 이용하여 구구단을 출력한다. 단 3의 배수 는 같은 줄에 를 출력하여 grep으로 잡아 ex1.txt 에 저장한다. 구구단 출력 스크립트 내부에 리다이렉션을 쓰지 말 것 Ex) 2 * 1 = 3 3 * 4 = (| grep “369” > ex1.txt) 명령어 tee를 이용한다. Hint ) Command | tee /dev/stderr | command
Similar presentations