본문 바로가기

3. Pwnable (포너블)/2) 개념 정리

[2022.03.12] "생활코딩-Linux" 강의 듣기

[무료] 생활코딩 - Linux - 인프런 | 강의 (inflearn.com)

 

[무료] 생활코딩 - Linux - 인프런 | 강의

본 수업에서는 리눅스의 사용법을 다룹니다. 특히 초심자들이 어려워하는 부분이 명령어를 이용해서 컴퓨터를 제어하는 법입니다. 여기서는 초심자가 명령어를 사용하는데 필요한 가장 보편적

www.inflearn.com

 

1. 터미널을 통해서 리눅스를 제어할 때 중요한 것

1) 명령어를 통해서 제어한다. (문자를 입력해서 명령한다.)

2) 우리가 내리는 명령은 현재 우리가 머물고 있는 디렉토리에서 내려진다.

 ① 명령을 내리기 위해서는 언제나 어떤 디렉토리에서 머물고 있는지를 확인하고, 기억해야 한다. 혼동하면 혼란스러운 상황을 야기할 수 있다.

 

2. 명령어 정리

1) ls: 디렉토리를 확인하고 싶을 때

 ① ls -a(--all): 현재 디렉토리의 모든 파일들을 보여 준다.

 ② ls -l: 현재 디렉토리의 파일들을 자세히 보고 싶을 때

 ③ ls -al: a와 l을 동시에 사용하고 싶을 때 쓴다.

 ④ ls -S(대문자 S, 대소문자를 구분해야 함): 파일 크기에 따라서 정렬하고 싶을 때

2) pwd: 현재 머물고 있는 디렉토리를 출력하고 싶을 때

3) mkdir (디렉토리 이름): 현재 디렉토리의 하위에다가 새로운 디렉토리를 만들고 싶을 때

4) 부모 디렉토리로 이동하고 싶다면?

 ① cd (이동하고 싶은 directory): 어디에 있느냐에 따라서 달라지지 않음, 절대적으로 고정되어있다는 뜻에서 절대경로라고 부른다. 이 명령 방식은, 이동하고 싶은 디렉토리가 부모 디렉토리이냐/아니냐에 구애받지 않는다.

여기서 다시 linux로 돌아가고 싶다면
이렇게 하면 된다.

 ② cd .. (점 두 개): 현재 가지고 있는 디렉토리의 부모 디렉토리 나타내기. 자신의 위치에 따라서 상대적으로 경로가 달라진다. 이런 방식을 상대 경로라고 부른다.

 

 ③ cd 뒤에 디렉토리 명을 조금만 입력하고 tab을 누르면, 나머지 텍스트가 완성된다.

여기서 tab을 누르면
이렇게 된다.

5) clear: 화면을 깨끗하게 만들고 싶을 때

6) 삭제하고 싶을 때

 ① rm (파일 명): 파일을 삭제하고 싶을 때

 ② rm -r (디렉토리 명): 디렉토리를 삭제하고 싶을 때 사용한다. 디렉토리는 중요한 것이기에 rm이라는 명령만으로는 삭제할 수 없다.

rm -r linux를 입력하니 linux가 사라진 것을 알 수 있다.

7) (명령어) --help: 명령어에 대한 간단한 설명이 나온다. 설명이 나올 때, 보고 있던 화면을 빠져나가지 않는다.

8) man (명령어): 상세한 설명서. 전용 페이지로 이동해서 상세한 설명을 보여준다.

을 입력하면
이런 게 나온다.

 ① 키보드 위, 아래 화살표 버튼을 눌러서 위 아래로 움직일 수 있다.

 ② /(검색하고 싶은 단어): 무언가 검색하고 싶을 때 사용한다.

'Manual page mkdir(1) line 1 (press h for help or q to quit)'의 자리에, '/make'가 입력된다.

 ③ n키를 누르면 검색한 단어로 이동할 수 있다. (단어 사이로 이동할 때 스크롤을 생략할 수 있다.)

 ④ q키를 누르면 밖으로 빠져나갈 수 있다.

 ⑤ 명령어에 따라서 help나 man이 동작하는 것이 있고, 아닌 것이 있다. help와 man가 내용이 같을 수도, 다를 수도 있다.

9) (명령어) --version: 명령어의 버전을 보고 싶을 때

10) (명령어) -p(--parents): 부모 디렉토리가 없을 때 에러가 날 경우, 부모 디렉토리를 생성한다.

 

3. 추가적인 설명

1) 명령 뒤에 –l(a, al, …) 등을 넣을 수 있는데, 이것을 parameter 또는 매개변수라고 말한다

2) 컴퓨터 제어 방식

 ① 아이콘을 통해서 컴퓨터 제어하는 것은 GUI(graphical user interface)라고 한다.

 ② 명령어를 통해서 컴퓨터를 제어하는 것은 CLI(command-line interface)라고 한다.

3) 리눅스는 어떤 명령이 성공했을 때, 아무 말도 하지 않는다. 실패했을 때는 실패 메시지를 보낸다.

4) 매개변수의 -(dash)가 하나 있을 때는 축약형, 두 개 있을 때는 full name이다.

  ex) ‘(명령어) –p’는 축약형, ‘(명령어) --parents’는 full name이다.

5) 리눅스의 감춰진 파일들은 이름 앞에 ‘.(온점)’이 붙는다.