Linux/Git 기초 Ch 1. Command-Line Interface

HanSungUk·2022년 5월 9일

Linux / Git 기초

목록 보기
1/4
post-thumbnail

Linux/Git 기초 Ch 1. Command-Line Interface 입니다.

현재 코드스테이츠 강의를 통해 프론트엔드를 학습하고 있습니다.
본 포스트는 해당 강의에 대한 내용 정리를 목적으로 합니다.

학습목표

  • 리눅스 터미널을 실행할 수 있다.
  • CLI를 이용한 작업과 GUI를 이용한 작업이 동일함을 이해할 수 있다.
  • 리눅스 터미널에서 기본적인 명령어를 사용할 수 있다.
  • 명령어를 사용할 때, 등장하는 키워드에 대해 이해할 수 있다.
  • 관리자 권한을 이해할 수 있다.
  • 절대 경로와 상대 경로의 차이를 이해할 수 있다.
  • 텍스트 에디터 nano를 이용해 파일을 수정하고, 저장할 수 있다.

1. CLI 명령어(1)

  • 프롬프트(Prompt)
    프롬프트(prompt)는 컴퓨터 터미널의 CLI(Command-Line Interface)의 명령줄 대기모드를 가리킵니다.

  • pwd
    pwd는 print working directory의 약자입니다. 컴퓨터 터미널의 CLI(Command-Line Interface)에서 현재 작업 중인 디렉토리의 이름을 출력하는 데 쓰입니다. 여기서 디렉토리(directory)의 의미는 폴더라고 합니다.

  • mkdir
    mkdir은 make directories의 약자입니다. 폴더를 만들라는 명령을 컴퓨터에 전달합니다. 이때 명령어 mkdir은 생성할 폴더의 이름을 함께 입력해야 합니다.

mkdir starrypro
  • ls
    ls는 list의 약자입니다. 특정 폴더에 포함된 파일이나 하위 폴더의 리스트를 출력합니다.
    li에는 자주 사용하는 옵션 la가 있습니다.

    • ls -a
      명령어 ls의 옵션 a는 "all"이라는 의미입니다. 숨어있는 폴더나 파일을 포함한 모든 항목을 터미널에 출력합니다.
    • ls -l
      옵션 l은 폴더나 파일의 포맷을 전부 표현하라는 의미입니다.
      다음의 출력처럼 하나의 파일 또는 하나의 폴더는 한 줄에 출력됩니다.
      drwxr-xr-x # 생략
      -rw-r--r-- # 생략
      명령어 ls와 함께 옵션 l을 사용하면, 가장 왼쪽에 출력되는 두 글자 d-를 확인할 수 있습니다. 여기서 d로 출력된 경우는 폴더를, -로 출력된 경우는 파일을 나타냅니다.
  • open .은 터미널의 현재 위치를 GUI의 탐색기(파인더)로 열 수 있습니다.

  • cd
    cd는 change directory의 약어입니다. 프폼프트로 상호작용하는 폴더를 다른 폴더로 변경한다는 의미입니다.

  • touch
    touch는 파일을 생성하는 명령어 입니다. 컴퓨터나 스마트폰 등 전자기기에서 문서의 형태로 작성된 모든 것을 파일이라고 합니다.

  • cat
    cat은 파일의 내용을 터미널에 출력하는 명령어입니다.
    명령어 cat과 함께 파일명을 입력합니다.

cat hi.txt
cat hi.txt hi2.txt hi3.txt 
// 이어지는 파일을 순서대로 읽고 터미널에 출력합니다.

2. CLI 명령어(2)

  • rm
    rm은 remove의 약어입니다. 폴더나 파일을 삭제할 때 사용합니다. rm으로 삭제한 폴더나 파일은 휴지통을 거치지 않고 삭제됩니다. rm은 단일 파일을 삭제할 수 있습니다.
    폴더를 삭제할 때 사용할 수 있는 옵션은 rf입니다.
rm bye.txt
// rm [삭제할 파일의 이름]
rm -rf bye
// rm -rf [삭제할 폴더의 이름]

옵션 r은 "recursive"를 뜻하고, 옵션 f는 "force"를 뜻합니다. 옵션 r은 폴더를 지울 때 사용하고, 옵션 f는 질문을 받지 않고 지울 때 사용합니다.

  • mv
    mv는 move의 약자입니다.
  1. 폴더나 파일을 이동할 때 사용합니다.
  2. 폴더나 파일의 이름을 변경할 수 있습니다.
mv bye.txt bye 
// mv [폴더나 파일의 이름] [도착 폴더의 이름]

mv bye.txt hello.txt
// mv [변경할 폴더나 파일의 이름] [변경하고자 하는 폴더나 파일의 이름]

컴퓨터가 파일을 이동시키는 과정은
1. 파일의 내용을 잠시 저장한다.->2. 원래 위치의 파일을 삭제한다.
-> 3. 도착 폴더에 1에서 저장한 내용으로 새로운 파일을 생성한다. 입니다. 파일을 복사하는 경우에는 2.삭제 단계를 제외합니다.

  • cp
    cpsms copy의 약자입니다. 폴더나 파일을 복사할 때 사용합니다.
cp helloWorld.txt hiComputer.txt
// cp [원본 파일 이름] [복사할 파일 이름]

cp -rf bye hi
// cp -rf [원본 폴더 이름] [복사할 폴더 이름]

3. 관리자 권한과 경로

  • 절대 경로와 상대 경로
    절대 경로는 기준점으로부터의 절대적인 위치를 나타내는데, 이 기준점을 루트 폴더(/)라고 합니다.
    /Users/[username]/helloWorld/hello/에서
    루프 폴더(/)에는 폴더 Users가 있고, 폴더 Users에 진입하면, 폴더 [usename]을 확인할 수 있습니다.
    상대 경로는 특정 폴더 또는 파일의 위치를 현재 위치를 기준점으로 나타냅니다. 현재 위치한 폴더는 점(./)으로 표현하고, 상위 폴더는 두 개의 점(../)으로 표현합니다.

  • 관리자(root) 권한
    절대 경로의 기준점인 루트 폴더(/)는 Linux의 관리자 영역입니다. 일반 사용자의 권한으로는 어떤 폴더나 파일도 생성, 변경, 삭제할 수 없습니다. 따라서 사용자가 새로운 프로그램을 설치하거나 변경 또는 삭제할 때에는, 관리자 권한이 필요합니다. 이때 사용할 수 있는 명령어가 sudo입니다.

    • sudo
      sudo는 사용자 환경에서, 관리자 권한을 일시적으로 획득하는 명령어입니다. 명령어 ls -l을 통해 특정 폴더나 파일이 사용자 또는 관리자의 소유로 생성되었는지 확인할 수 있습니다.
mkdir justMkdir
sudo mkdir justMkdir
password: 
// 타이핑을 해도 출력이 없습니다. 
// 비밀번호가 출력되지 않더라도, 입력이 정상적으로 이뤄지고 있습니다.

0개의 댓글