[부스트캠프 AI Tech] 5주차 Day 1

Mattaaa·2022년 2월 14일
0

[부스트캠프 AI Tech]

목록 보기
16/23

오늘 학습 내용


1. Linux

2. Shell Command




1. Linux

  • 개인 PC 보다는 서버에서 자주 사용하는 OS 이다.

  • 무료 오픈소스이며, 여러가지 버전이 존재한다.

  • CLI(Command Line Interface)는 Terminal 상에서 작업하고, GUI(Graphic User Interface)는 Desktop 상에서 작업한다.

  • 대표적인 Linux 배포판

    • Debian
      온라인 커뮤니티에서 제작하여 배포

    • Ubuntu
      영국의 캐노니컬 회사에서 만든 배포판이며, 초보자들이 쉽게 접근 할 수 있음

    • Redhat
      레드햇 회사에서 제작하여 배포

    • CentOs
      레드햇이 공개한 버전을 브랜드와 로고를 제거하고 배포한 버전

  • Linux를 사용하는 방법

    • VirtualBox에 Linux 설치

    • Docker로 설치

    • WSL 사용

    • Notebook에서 Terminal 실행




2. Shell Command

  • 쉘(Shell) 이란 사용자가 문자를 입력해 컴퓨터에 명령할 수 있도록 하는 프로그램이다.

  • Terminal 은 쉘을 실행하기 위해 문자 입력을 받아 컴퓨터에 전달하고, 출력하는 역할이다.

  • 쉘의 종류

    • sh
      최초의 쉘
    • bash
      Linux 표준 쉘
    • zsh
      Mac 카탈리나 OS 기본 쉘

기본 쉘 커맨드

  1. man
    쉘 커맨드 메뉴얼 문서를 보고자 하는 경우

  2. mkdir
    디렉터리 생성

  3. ls
    List Segments의 줄임말로, 현재 폴더의 파일들을 확인
    -a : 숨겨진 파일 및 폴더 전체 출력
    -l : 퍼미션, 소유자, 만든 날짜, 용량 출력
    -h : 용량을 GB, MB 단위로 표현

  4. pwd
    Print Working Directory의 줄임말로, 현재 폴더의 경로 출력

  5. cd
    Change Directory의 줄임말로, 폴더를 이동한다.

  6. echo
    print 명령어 처럼 Terminal에 텍스트를 출력한다.

  7. vi
    텍스트 파일 편집기 이다

    Command Mode - 기본 Mode
    dd : 현재 위치한 한 줄 삭제
    i : INSERT 모드로 변경
    x : 커서가 위치한 곳의 글자 1개 제거
    yy : 현재 줄 복사
    p : 현재 커서가 있는 줄 바로 아래에 붙여넣기
    k : 커서 위로
    j : 커서 아래로
    l : 커서 오른쪽으로
    h : 커서 왼쪽으로

    Insert Mode - 파일 편집 Mode
    ESC를 통해 Command Mode로 복귀

    Last Line Mode - 종료 옵션 설정
    w : 현재 파일명으로 저장
    q : vi 종료(저장되지 않음)
    q! : vi 강제종료
    wq : 저장한 후 종료
    /문자 : 문자 탐색
    set nu : vi 라인 번호 출력


  1. sudo
    최고 권한을 가진 슈퍼 유저로 명령을 실행

  2. cp
    파일 또는 폴더를 복사
    -r : 디렉토리를 recursive하게 복사
    -f : 강제 복사

  3. mv
    파일 이름 변경 및 파일 이동

  4. cat
    특정 파일 내용 출력
    Redirection 기호를 통해 Overwirte 하거나 Append 가능

  5. history
    최근 입력한 쉘 커맨드 History 출력
    !30 같은 명령어로 커맨드 재활용 가능

  6. find
    파일 및 디렉토리를 검색할 때 사용
    -name : 이름을 기준으로 검색

  7. export
    환경 변수 설정
    export water = "물"
    echo $water

  8. alias
    명령어를 별칭으로 설정
    alias ll2='ls-l'

  9. head, tail
    파일 앞, 뒤 n행 출력
    head -n 3 vi-test.sh

  10. sort
    행 단위 정렬
    -r : 정령을 내림차순으로 정렬
    -n : Numeric Sort

  11. uniq
    중복된 행이 연속으로 있는 경우 중복 제거
    sort와 함께 사용
    -c : 중복 행의 개수 출력

  12. grep
    파일에 주어진 패턴 목록과 매칭되는 라인 검색
    -i : Insensitively 하게 대소문자 구분 제외
    -w : 정확히 그 단어만 찾기
    -v : 특정 패턴 제외한 결과 출력
    -E : 정규 표현식 사용
    ^W : 단어로 시작하는 것
    W$ : 단어로 끝나는 것
    . : 하나의 문자 매칭

0개의 댓글