FTZ Trainer8 + FTZ Trainer9

2022. 2. 20. 01:11Site/FTZ

Trainer8[player]

  • 새로운파일생성
  • 컴파일 실행 방법

챕터8은 새로운파일을 만들고 컴파일하고 실행시키는 방법을 소개한다

 

먼저 파일의 종류이다

일반텍스트파일[글자로만이루어진파일(README.TXT)] <- cat명령을 사용하여 내용을 출력함

프로그램소스파일[컴퓨터언어로이루어져있음] <- compile을 통해서 실행이 가능하도록한다음 사용한다


텍스트파일생성방법를 생성하려면 
cat > 파일이름.txt라고 입력 -> 원하는 내용작성 -> 컨트럴키와 D키를 동시에 누르면 생성이 된다
* > 를 리다이렉션이라고 하는데 왼쪽방향으로 꺽쇄모양이면 왼쪽에서 출력되는것을받아서 오른쪽의 입력으로 보낸다는 의미이다 (ex)A >(리다이렉션) B = A에서 출력되는것을 받아 B의 입력으로 보냄*

 

위의 cat > 파일이름.txt를 해석해보면

cat 명령을 사용하여 입력하는 모든글자를 파일이름.txt로 보낸다 라는 의미이다


hello를 입력한 test.txt텍스트파일을 생성하였다

 

이 내용을 수정을 하고 싶다면은 어떻게 해야할까?
다시 cat > test.txt로 리다이렉션을 한번만 사용하면 기존의 내용이 사라지며 새로운파일이 다시 만들어지므로
수정을 할수가없게된다
 
리다이렉션을 연속으로 두번써주면은 수정이 가능하다
 
test.txt에 world라는 내용을 추가하였다

 

내용을 확인해 보니 world라는 내용이 추가되었다


다음은 프로그램소스파일을 만드는 방법이다

 

cat >program.c라고 입력한다음

int main(){int a=10,b=20; printf(“10+20=%d”,a+b);}를 입력한 프로그램소스를 작성한다

이렇게 만든 프로그램파일은 컴파일을 통해 소스파일을 실행가능한 프로그램파일로 변경해야하기 때문에

컴파일을 시켜줘야된다

 

컴파일 하는 방법은 gcc o program.exe[프로그램이름] program.c[소스파일이름]순으로 작성한다


Trainer9[programming]

  • 리눅스의 권한

이번 챕터는 리눅스의 권한에 대하여 소개한다

 

리눅스에는 4가지 종류의 사용자가 있다

유저: 자기자신

그룹: 모든 유저는 하나이상의 그룹에 속함[보통은 자신의 유저네임과 같은그룹에 속한다]

아더: 유저, 그룹을 제외한 모든 다른 사람들을 의미한다

루트: 절대적인 권한을 가지고 있는사용자로서 모든파일을 제어할 수 있다


자신이 어떤 유져, 그룹에 속해있는지 확인하기 위해 id를 입력한다

  1. uid[= User ID](2009=trainer9)
  2. gid[= Group ID](2009=trainer9) -> 특별한 지정이 없다면 uid와 항상 같음
  3. groups : 자신이 어떤 그룹에 속해있는지 알려줌 -> 특별한 지정이 없다면 uid와 같은 그룹에 속함

다음은 파일의 권한정보분석이다

ls -al test1을 하여 test1의 파일 분석을 해보면

-rwx[유져의권한]rwx[그룹의권한]rwx[아더의권한]을 의미하고 r[읽기권한],w[쓰기권한],x[실행권한]을 의미한다

잠깐 정리해본다

읽기권한이 없다면 -> cat 명령으로 파일을볼 때 Permission Denied

쓰기권한이 없다면 -> cat >> 명령으로 내용편집 못함

실행권한 -> 리눅스에서는 확장자[exe, bat, com]만 보고 실행파일인지 가늠할수없기 때문에 실행권한인 ‘x’라는 문자가 있는지 없는지를 보고 판단한다

 

 

trainer9[유져], trainer10[그룹]을 의미하고 나머지는 아더이다


정리한 내용이 잘나와있어서 내가 쓰는 것보다는 이것을 보는게 나을것같다

 

 

다음시간에는 Trainer의 마지막 Trainer10을 다루어 보겠다... 

'Site > FTZ' 카테고리의 다른 글

FTZ level1  (0) 2022.02.21
FTZ Trainer10  (0) 2022.02.20
FTZ Trainer7  (0) 2022.02.19
FTZ Trainer5 + FTZ Trainer6  (0) 2022.02.19
FTZ trainer3 + FTZ trainer4  (0) 2022.02.19