첫번째 과제가 주어졌다.
1. K.Knock 홈페이지에 가입후 자기소개 남기기
2. 해커스쿨 FTZ Trainer10까지 완료후 인증샷을 첨부파일로 올리기
3. C언어
- 변수란 무엇인가?
- 자료형에는 뭐가 있을까?
- 포맷스트링은 뭐지?
*ppt로 제작해서 올리기
일단 1번과 2번은 완료했다.
하지만 포스팅하면서 다시 처음부터 해보자
FTZ TRAINER7
이번시간에는 압축에 대해서 배울것이다.
일단 리눅스에서 사용되는 대표적인 압축프로그램은 gzip과 tar이다.
이 두개의 프로그램이 어떻게 쓰이는지 알아보자
먼저 tar이다. 옵션을 알아보자
c : Create란 뜻으로 새로운 파일을 만드는 옵션이다.
x : eXtract란 뜻으로 압축을 해제시키는 옵션이다.
v : View란 뜻으로 압축이 되거나 풀리는 과정을 출력하는 옵션이다.
f : File이란 뜻으로 파일로서 백업을 하겠다는 옵션이다.
이를 이용하여
파일 합치기 : tar cvf <합친파일> <합칠파일들>
해 제 하 기 : tar xvf <해제할 파일>
이런식으로 사용하면 된다. 만약 현재폴더 안의 모든 파일을 합치려면 <합칠파일들>란에 * 이렇게 별을 하나 넣어주면 된다.
그러나 여기서 알아야 할것은 tar은 사실 압축프로그램이 아니란 것이다. tar을 통해 파일들을 합쳐보면
합친 파일의 용량은 합칠 파일들의 용량합보다 크다
그래서 tar명령어는 단순히 파일들을 합치는 명령어라고 알아두면 된다. 그렇다면 이 명령이 왜 필요할까? 다음 명령어부터 살펴보자
압축하기 : gzip <파일이름>
압축풀기 : gzip -d <파일이름>
이렇게 사용하면 된다.
그러나 gzip명령어는 다수의 파일을 압축 할 수 없다. 즉, 한개의 파일만 압축할 수 있다는 것이다.
그렇기 때문에 tar을 통해 파일을 합치고 gzip을 통해 압축을 시켜줘야 하기 때문에 tar이 필요한 것이다.
FTZ TRAINER8
이번시간에는 파일을 만들고 컴파일하고 실행시키는 방법에 대해 배워보자
먼저 우리가 만드는 파일에는 크게 두가지가 있다
첫째로 일반 텍스트 파일(.txt)가 있는데 이는 cat명령어를 통해 열어볼 수 있다.
둘째로 프로그램 소스파일이 있다. 이는 cat으로 보는것이 아니라 컴파일이라는 과정을 거쳐 실행이 가능하도록 만든 후 사용해야한다.
먼저 일반 텍스트 파일을 만들어보자
우리는 일단 cat을 이용해 만들어 볼 것이다.
cat은 파일을 보는명령이지만 우리는 리다이렉션을 이용해서 입력한 내용을 파일로 보낼 수 있다.
cat > <파일명> 과 같은 형식으로 작성하게 되면 내용을 입력 할 수 있게 나오는데 원하는 내용을 입력후 ctrl+D를 눌러 나와보자
그러면 우리가 만든 텍스트파일이 하나 생길것이다. 이것을 cat 명령어로 확인해보면 우리가 작성한 문장이 그대로 나온다.
이 방법 외에도 vi편집기를 이용해 만드는 방법이 있다. 이는 더 빠르고 쉽게 파일을 생성할 수 있게 도와준다.
다시 돌아와서 이번에는 cat 명령어로 내용을 추가하는 방법을 알아보자
우리가 처음
cat > test.txt
라는 명령을 사용해서 내용을 쳤다고 치자
내용을 추가하기 위해 위와 같은 명령을 한번 더 사용했다면 기존의 명령은 날라가며 덮어쓰기가 된다.
내용을 추가하려면 아래와 같이 리다이렉션을 두번사용하면 된다.
cat >> test.txt
이렇게 되면 우리가 추가한 문장이 정말로 test.txt에 추가가 된다 확인해보자.
다음으로 우리는 프로그램 소스를 만들것이다.
이번에도 cat과 리다이렉션을 이용해서 c언어 코드를 가볍게 작성해보자
#include<stdio.h>
int main(){
int a=10,b=20;
printf("%d",a+b);
return 0;
}
위는 간단한 예시이다. 확장자는 .c로 해주어야 한다.
이런식으로 작성을 마친 소스파일은 컴파일을 거쳐야 실행할 수 있다.
gcc -o <프로그램명.exe> <소스파일명.c> 과 같은 형식으로 작성하면 우리가 지정한 프로그램명으로 실행파일이 하나 생긴다
이제 절대경로 또는 상대경로를 통해 실행시켜보자
./prgram.exe 이런식으로 상대경로를 작성해도 되고, /home/trainer8/program.exe 이런식으로 절대경로로 작성해도 된다.
'Study > system' 카테고리의 다른 글
[K.Knock]폰노이만 구조, 하버드 구조 (0) | 2017.05.23 |
---|---|
[K.Knock]FTZ trainer9,10 (0) | 2017.03.10 |
[K.Knock]FTZ trainer5,6 (0) | 2017.03.10 |
[K.Knock]FTZ trainer3,4 (0) | 2017.03.10 |
[K.Knock]FTZ trainer1,2 (0) | 2017.03.10 |