[FTZ] training8

이번에는 새로운 파일을 생성하고, 소스코드를 만들어 컴파일하고 실행하는 방법을 설명합니다.

파일의 종류는 두 가지가 있습니다. 먼저, 일반 텍스트 파일입니다. 이것은 윈도우에서 우리가 메모장으로 생성한 .txt의 파일이나 training을 하며 cat명령으로 내용을 출력했던 파일들입니다. 다른 하나는 프로그램 소스파일입니다. 소스파일 역시 텍스트 파일이지만 보통 이 파일은 컴파일과정을 거쳐 실행 가능하도록 만든 후 사용합니다.

텍스트 파일 생성 방법

  1. 프롬프트에서 cat > [파일이름.txt] 명령을 입력합니다.
  2. 파일의 내용을 입력합니다.
  3. crtl + D를 눌러 입력을 멈춥니다.

위의 과정에서 알 수 있듯, 지금까지 파일이 내용을 보기 위해 사용했던 cat 명령이 파일 쓰기에도 사용됐다는 것을 알 수 있습니다. >문자의 의미는 방향전환redirection 입니다.
방향전환을 한다는 의미를 살펴봅시다. 원래 cat명령은 모니터에 명령수행 결과를 출력합니다. 하지만 방향전환을 함으로서, 모니터가 아닌 [파일이름.txt]에 입력결과를 보냅니다. 즉, 출력의 방향을 전환한 것입니다.

텍스트 파일 내용 추가

직관적으로 생각해보면 cat > [추가할_파일이름.txt] 명령으로 기존 파일 내용에 새로운 내용을 덧붙일 수 있을 것 같지만, 실제로는 기존 내용이 모두 사라지고 새로운 파일이 생성됩니다. 기존의 내용을 보존시키면서 새로운 내용을 추가하려면 리다이렉션(>)을 두 번 사용하면 됩니다.

소스코드 생성 및 컴파일

소스코드 또한 텍스트 파일처럼 생성할 수 있습니다. 하지만 컴퓨터가 해석할 수 있는 프로그래밍 언어로 작성을 한다는 것에 차이점이 있습니다. 이번 트레이닝에서는 C언어로 소스코드를 작성합니다.

1
2
3
4
5
6
[trainer8@ftz trainer8]$ cat > program.c
int main() {
int a=10,b=20;
printf("10 + 20= %d", a+b);
return 0;
}

위의 과정을 끝내고 나면 현재 위치에 program.c라고 하는 소스코드 파일이 생성되어 있습니다. 이제 이 소스파일을 컴파일해서 실행할 수 있는 프로그램으로 만들어줍니다.

1
[trainer8@ftz trainer8]$ gcc -o program.exe program.c

이는 gcc라는 컴파일러를 사용해서 program.c 파일을 컴파일해서 program.exe라는 실행파일을 만들라는 의미입니다. 아무 에러가 없다면 정상적으로 컴파일된 것입니다.

이제 우리가 만든 프로그램을 실행할 수 있습니다.

1
[trainer8@ftz trainer8]$/home/trainer8/program.exe
혹은
1
[trainer8@ftz trainer8]$./program.exe

위와 같이 입력하여 실행합니다. 두 표현의 차이는 첫 번째의 경우 절대경로를 입력하여 파일을 실행한 것이고, 두 번째는 상대경로를 입력하여 파일을 실행한 것에 있습니다.

FTZ training8 정리글을 마칩니다.



Author

Jaeyun Cha

Posted on

2020-01-07

Updated on

2023-04-11

Licensed under

댓글