💻

CLI, GUI

Mia_ 2022. 10. 29. 23:17

CLI(Command Line Interface, 명령 줄 인터페이스)
: 문자열로 명령을 내리고 출력 역시 문자열 형태로 주어지는 환경

GUI(Graphic User Interface, 그래픽 사용자 인터페이스)
: 사용자가 컴퓨터와 정보를 교환할 때 그래픽을 이용할 수 있는 환경

- 예시로는 우리가 보는 운영체제(Window, Mac OS)의 화면, 애플리케이션 화면이 있음



CLI 명령어
* 터미널 실행하기 : 단축키 Ctrl + Alt + t

* whoami : 현재 로그인된 사용자 확인

 

* prompt : 명령줄 대기 모드. 터미널 화면에 글자가 입력되는 한 줄 공간.

* pwd : 현재 위치 확인하기
- print working directory. 여기서 말하는 디렉토리는 폴더라고 함.
- 현재 작업 중인 폴더 위치 출력

* mkdir : 새로운 폴더 생성하기
- make directories.
- 명령어와 폴더 이름은 스페이스 키로 구분

* ls : 특정 폴더에 포함된 폴더나 파일 확인하기
- list.
- [옵션] a : 'all' 의미. 숨어 있는 폴더나 파일을 포함한 모든 항목을 터미널에 출력.
- [옵션] l : 파일의 모맷을 모두 표시.
· 하나의 폴더 혹은 하나의 파일은 한 줄에 출력.

drwxr-xr-x   # 생략
-rw-r--r--   # 생략

· 가장 첫 글자로 출력되는 글자는 d 혹은 - 로 고정.
· d 로 출력된 경우는 폴더를, - 로 출력된 경우는 파일을 나타냄
· 폴더는 명령어 cd를 통해 접근 할 수 있지만 파일은 불가능

* nautilus : 현재 위치 GUI로 실행

* cd : 폴더에 진입하기
- change directory.
- 프롬프트로 상호작용하는 폴더를 다른 폴더로 변경

* touch : 파일 생성하기
- 전자기기에서 문서 형태로 작성된 모든 것을 파일이라고 함
- touch 파일명.확장자 로 파일 생성

* cat : 파일 내용을 터미널에 출력하기

 

* rm : 폴더나 파일 삭제하기

- remove.

- 파일을 삭제할 경우, rm 파일명.확장자 를 입력하면 단일 삭제 가능

- 폴더의 경우 단일 삭제 불가! 

  · [옵션] rf : 'recursive',  'force'을 의미.  질문 받지 않고 삭제시 사용

 

* mv : 폴더나 파일의 이름을 변경 혹은 위치 옮기기

- move.

① 위치 옮기기

//mv [이동할 파일 혹은 폴더명] [도착 폴더명]
mv bye.txt bye/

② 이름 변경하기

//mv [기존 파일명] [바뀔 파일명]
mv bye.txt hello.txt

 

* cp :파일이나 폴더 복사하기

- copy.

- cp [원본파일명] [복사할 파일명]

- 폴더의 경우 복사 시 옵션 필요! / cp [원본 폴더명] [복사할 폴더명]

  · [옵션] rf : 'recursive',  'force'을 의미. 질문 받지 않고 복사 시 사용

 

* sudo : 관리자 권한을 획득

- 관리자 권한을 일시적으로 획득


사용자와 관리자 권한

 

* pc가 항상 관리자 권한 일 때 일반 사용자가 정보를 탈취 당하는 해킹 피해가 있었음.

 - 공격자가 좋지 않은 의도로 작성한 코드를 프로그램에 삽입

 - 사용자가 해당 프로그램을 설치 

 - 악성 코드가 사용자 정보를 공격자에게 전달

 

* 위의 같은 경우와 하나의 OS안에서 두 가지 시스템이 충돌하게 되는 경우 등을 방지하기 위해 접근 권한을 분리함

* 우분투의 경우 사용자가 관리자의 권한에 접근할 수 없도록 함. 오직 특정 명령어를 입력하는 것으로 관리자 권한을 빌리도록 함


컴퓨터가 파일을 이동, 복사하는 방법

 

이동하는 방법

- 1 파일의 내용을 잠시 저장한다

- 2 원래 위치의 파일을 삭제한다

- 3 도착 폴더에 1에서 저장한 내용으로 새로운 파일을 생성한다

 

복사하는 방법

- 1 파일의 내용을 잠시 저장한다

- 2 도착 폴더에 1에서 저장한 내용으로 새로운 파일을 생성한다

 


절대경로 

: 기준점인 루트 폴더(/)로 부터의 절대적인 위치. 

특정 폴더나 파일이 루트폴더로 부터 어떤 경로로 진입해야 만날 수 있는지를 말함 

 

상대경로

: 특정 폴더나 파일의 위치를 현재 위치를 기준점으로 나타냄

- 현재 위치한 폴더는 점(.)으로 표현하고, 상위 폴더은 두개의 점(..)으로 표현 


관리자(root) 권한

- 리눅스의 루트 폴더(/)는 관리자 영역이다 

- 리눅스 관리자는 일반인 사용자에게 관리자 권한을 완전하게 넘기지 않는다