TIL 8일차

devTiana·2021년 5월 25일
0

Today I Learned

목록 보기
8/24
post-thumbnail

[Linux]기초

CLI (Command-Line Interface) : 명령어를 입력해 컴퓨터를 조작하는 방식
GUI (Graphical User Interface) : 사용자가 화면을 통해 컴퓨터와 소통하는 방식

CLI

  • 입력소스(Input source) : 입력을 담당하는 키보드나 마우스 또는 카메라, 마이크 등 컴퓨터에 새로운 명령을 전달하는 모든 소스를 입력소스라고 한다.
  • 출력소스(Output source) : 입력소스에 의해 또는 작성된 프로그램에 의해 시각적 출력을 담당하는 모니터나 청각적 출력을 담당하는 스피커를 출력소스라고 한다. 그 외에 스마트홈을 연결하여 전등이나 공기청정기를 조작하는 경우, 전등이나 공기청정기도 출력소스가 될 수 있다.
  • 컴퓨터를 조작하기 위한 입력과 출력을 간단하게 I/O(Input/Output)라고 일컫는다.

CLI 가 GUI 보다 유리한 이유는?

대량의 서버 컴퓨터를 설치해야 하는 서비스를 보면, 각각 I/O를 부착하는 일은 불가능에 가깝다.
CLI를 통해 서버 컴퓨터로 접속을 요청하면, 서버 컴퓨터는 요청한 컴퓨터의 출력소스(모니터)를 이용하기 때문에 자신의 모니터로 서버 컴퓨터와 소통할 수 있다. 매우 효율적인 방법이기 때문에 수많은 현직 개발자가 CLI로 서버 컴퓨터와 소통한다. 그리고 대부분의 서버 컴퓨터는 무료인 Linux운영체제가 설치되어 있다. 그렇기 때문에 Linux 환경에서 CLI를 이용하는 방법을 개발자라면 꼭! 학습해야 한다.

Ubuntu에서 터미널 실행하기

  • 단축키 : Ctrl + Alt + T
  • 터미널은 CLI(Command-Line Interface)이다.
  • 키보드의 입력을 확인하고 편집할 수 있는 한 줄의 공간을 프롬프트(Prompt)라고 한다.

< 기본 명령어 >

  • 옵션을 뜻하는 대쉬(dash, -) 뒤에 오는 옵션의 순서는 기능에 영향을 미치지 않음.
  • 옵션 r은 "recursive"를 뜻하고 폴더를 지울 때 사용한다.
  • 옵션 f는 "force"를 뜻하며 질문을 받지 않고 삭제할 때 사용한다.
  • 각 명령어에 포함된 옵션은 명령어만 입력하거나 -h 또는 --help 와 같은 옵션으로 확인이 가능함.

    pwd : 현재 위치 확인하기
    mkdir 폴더명 : 새로운 폴더 생성
    ls : 특정 폴더에 포함된 파일이나 폴더 확인
    ls -l : 폴더나 파일의 포맷을 전부 출력
    ls -a : "all"의 의미. 숨어있는 폴더나 파일을 포함한 모든 항목을 출력
    ls -al 또는 ls -la : 위의 la옵션을 전부 출력
    nautilus : 터미널의 현재 위치를 GUI의 탐색기로 실행
    cd 폴더명 : 폴더에 진입
    touch 파일명.확장자 : 파일 생성
    cat : 파일의 내용을 터미널에 출력
    rm : 단일 파일 삭제
    rm -rf : 질문 없이(옵션 f) 폴더 삭제(옵션 r)
    mv [폴더나 파일 이름] [변경할 이름 or 도착폴더의 이름] : 폴더나 파일의 이름 변경, 또는 폴더나 파일 위치 옮기기
    cp [원본 파일 이름] [복사될 파일 이름] : 폴더나 파일 복사 (폴더 복사시 r과 f옵션 사용)
    whoami : 현재 로그인된 사용자명 확인 (폴더 형태로 존재)
    sudo : 관리자 권한을 획득하는 명령어
    code : GUI 에디터인 VS Code 실행
    nano : 텍스트 에디터인 nano 실행

컴퓨터가 파일을 옮기거나 복사하는 방법

  1. 파일의 내용을 잠시 저장한다.
  2. 원래 위치의 파일을 삭제한다. (복사시 2번 생략)
  3. 도착 폴더에 1 에서 저장한 내용으로 새로운 파일을 생성한다.

절대경로와 상대경로

  • 절대경로 : 기준점인 루트폴더( / )로부터의 절대적인 위치를 나타낸다. 특정 폴더나 파일이 루트폴더로부터 어떤 폴더로 진입하는 경우 만날 수 있는지 나타냄.
    ex) ( /home/[username]/helloworld/ ) 터미널에서 pwd로 확인할 수 있다.
  • 상대경로 : 특정 폴더 또는 파일의 위치를 현재 위치를 기준으로 나타낸다.
    ㄴ 현재 위치한 폴더 ( . ) / 상위 폴더 ( .. ) / 하위 폴더 ( ./ ) / 사용자 폴더 ( ~/ )

텍스트에디터 nano

  • nano : 프로그램 실행 / nano hello.js : hello.js를 nano에서 열기
  • Ctrl + R : 파일 열기 / Ctrl + T : 화살표키로 파일 경로 탐색 후 파일 및 디렉토리 불러오기
  • Ctrl + X : 프로그램 종료. 변경사항이 있을 경우 저장할지 물어봄. Y나 N으로 결정
  • Ctrl + O : nano를 종료하지 않고 파일이 저장됨. save 기능

오늘의 한 줄

CLI를 다루기 시작하니 뭔가 찐개발자가 된 것 같은 기분이 든다ㅎㅎ 능숙하게 다룰 수 있을 때까지 연습하자!!

profile
개발자

0개의 댓글