Linux와 Terminal, 그리고 Database

류창선·2023년 8월 29일
0

front-end

목록 보기
3/38
post-thumbnail

⭐️ 고민거리

  1. git bash의 sh도 Shell을 의미할까요?
  2. 프론트엔드 개발자가 Linux와 Terminal, 그리고 Database에 대하여 얼만큼의 지식이 필요할까요?

Linux Basic

  • 운영 체제(OS, Operating System)
    - 컴퓨터라는 도구와 소통 및 명령 할당할 수 있는 중간 매개 소프트웨어(Windows, Mac OS, etc)
  • 명령어 집합의 별도 학습 필요
  • 커널(Kernel)
    - 유저가 CPU 안에 있는 반도체 칩 등에게 어떤 명령을 Shell(User Interface)로 가하게 되면 그 명령을 수행
    - 즉, 커널은 중간 관리자
    - 쉘로 커널과 소통하기 위한 명령어를 알고 있어야 함
    - 쉘 종류: git bash, zsh, csh, tcsh 등(sh는 Shell을 의미)
    - 커널의 역할 수행: 태스크 관리자, 메모리 관리자, 파일 시스템 관리자, 네트워크 관리자, 디바이스 드라이버 관리자
  • Linux root directory
    - 최상위 디렉토리
  • Linux home directory
    - ~: home directory를 의미
    - 사용자로서 사용하는 모든 디렉토리가 포함된 공간
  • 절대 경로 / 상대 경로
    - 절대 경로: root directory부터 시작하는 경로
    - 상대 경로: 지금 자신의 위치 기준으로 찾아가는 경로
  • Linux 환경 변수
    - 동적인 변수값의 집합
    - Linux 기본 세팅으로, key와 value의 형태로 이뤄짐
  • Linux .config 파일
    - 환경을 목적에 맞게 바꿀 수 있음
  • Linux Command(리눅스 명령어): CLI(Command Line Interface)
// 아래의 내용들을 터미널에 입력합니다.
clear  // 명령어 삭제
pwd    // 현재 디렉토리 확인(print working directory)
ls     // 현재 디렉토리 내 폴더 및 파일 확인(list segments)
ls -l  // 현재 디렉토리 내 폴더 및 파일의 메타 정보까지 나열
ls -al // 파일명 앞에 '.'이 적혀 있는 숨김 파일까지 확인
env    // 동적인 변수값들을 보여줌(environment)
cd /   // root directory로 이동(change directory)
cd ~   // home directory로 이동
cd..   // 현 위치 대비 앞 단위로 이동
cd...  // '.'의 갯수에 따라 깊은 단위로 이동
mkdir  // 디렉토리 생성(make directory)
touch  // 디렉토리 및 파일 생성(예: touch test.txt)
rm -r  // 디렉토리와 내부 파일 전체 삭제(remove recursive / 예: rm -r directory)
rm     // 파일 삭제(예: rm test.txt)
cp     // 디렉토리 및 파일 복사(copy / 예: cp test.txt)
vi     // 파일 수정(vim)

Database

  • 카페 매출 정보를 저장해놓는 엑셀, 작품을 써서 저장해놓는 워드 등과 마찬가지로 데이터베이스는 데이터를 저장해놓는 곳을 의미
  • 데이터베이스를 사용하는 이유는 첫째, 데이터를 오랜 기간 저장 및 보존하기 위해서, 둘째, 데이터를 체계적으로 보존하고 관리하기 위해서
  • 데이터베이스는 관계형 데이터베이스(RDBMS: Relational Database Management System)와 NoSQL로 명칭되는 비관계형(Non-relational) 데이터베이스로 나눔
  • 관계형 데이터베이스
    - 모든 데이터를 2차원 테이블로 표현(column / row)
    - 각 row에는 고유 키(PK: Primary Key)가 존재
    - 테이블 관계의 종류
    - one-to-one: A 테이블의 한 데이터는 B 테이블의 데이터 하나와만 연결
    - one-to-many: A 테이블의 데이터가 B 테이블의 여러 데이터와 연결
    - many-to-many: A 테이블과 B 테이블 모두 서로 여러 데이터와 연결
    - FK(Foreign Key): 다른 테이블의 PK를 참조한 외부 키를 의미
    - 중요한 점은 테이블의 셀 하나에는 하나의 데이터만이 존재
profile
Front-End Developer

0개의 댓글