Command Line(9-10)

Blackwidow·2020년 12월 16일
0

Achievement Goals

  • 터미널에서 CLI를 사용하는 것이 GUI로 작동하는 것과 차이가 없음을 이해할 수 있다.

Command Line을 사용해야 하는 이유

  • 마우스로 여러번 해서 설정할 수 있는것을 명령어 몇줄로 설정할 수 있기 때문에 빠르다.
  • 원격에 있는 서버에 접속하려고 한다면 마치 내 서버인것처럼 접근할 수 있기 때문에 접근성이 좋다.

리눅스, 유닉스 계열의 명령어를 배우는 이유

  • 서버시장에서 이런 계열의 점유율이 높다.
  • 오픈소스이기 때문에 비용적인 측면에서도 유리하다.
  • 그래서 서버연습할때 사용하면 좋다.
  • 기본적인 unix/linux 명령어를 사용할 수 있다

    • ls

      • list란 의미로, 현재 파일의 모든목록 출력 ls
    • cd

      • 디렉토리로 이동
      • cd + 이동하고자 하는 디렉토리이름
      • cd + 이동하고자 하는 디렉토리경로(pwd명령어로 확인 가능)를 넣어도 해당 디렉토리로 이동 가능
    • mkdir

      • 디렉토리파일 생성, mkdir 디렉토리이름
    • rm

    • rm 파일이름 = rm -rf newname.txt ->rm파일 삭제됨.

    • pwd

      • 현재 나의 디렉토리 확인 가능, pwd치면 나의 디렉토리의 전체 경로가 나온다.(절대경로)
    • touch

      • 빈파일 생성,touch 파일이름.확장자
    • cat

      • 텍스트 형태의 파일 확인
      • cat 파일이름 -> 파일의 텍스트인 내용물이 출력된다.
    • mv

  1. 파일 및 디렉토리 옮기기
  • mv 이동할 파일 또는 디렉토리 이동할장소 파일 및 디렉토리
  • mv newfile.txt newdir
  1. 파일 및 디렉토리 이름 바꾸기
    • mv 바꿀 파일명 또는 디렉토리 바뀐이름 파일명 또는 디렉토리
    • mv newfiletxt newname.txt -> newfile파일이 newname으로 이름이 변경됨
  • cp

    • 파일을 다른 디렉토리에다가 복사
    • cp 복사할 파일이름 이동할 장소(이동할디렉토리경로)
    • cp newname.txt ~/Downloads/-> newname이란 파일을 Downloads디렉토리에 복사된다.
  • 명령어를 사용할 때, 현재 내가 위치한 디렉토리를 파악할 수 있다.

    • pwd사용
  • 명령어를 사용할 때, 등장하는 키워드에 대해 이해할 수 있다

    • 홈 디렉토리로 이동(cd ~)

      • cd ~ 명령어는 cd는 체인지, ~는 홈을 의미한다.
        • 홈이란? 현재 사용자들의 개인화된 파일의 디렉토리들을 말한다.
    • 루트 디렉토리로 이동(cd /)

      • 루트 디렉토리는 시스템의 최상위 디렉토리로, cd /사용하면 그 다음줄에 user앞에 /가 생긴다.
      • ls로 현재 디렉토리에 있는 모든 파일을 출력해본다.
      • pwd로 현재 디렉토리 경로 확인할 수 있다. 최상위이기 때문에 경로가 안나오는것도 확인할 수 있다.
    • 현재 디렉토리로 이동(cd .)

      • 명령어를 실행해도 똑같이 반복된 줄만 나온다.
    • 부모 디렉토리로 이동(cd ..)

      • 바로 상위디렉토리로 이동한다.
  • 파일이름에 공백이 있을 경우엔?

    • My Documnets란 폴더에 가고싶으면 cd My Documents 여기서 파일이름의 공백은 \ 을 넣어서 이동(주의사항:+''). 또는 My까지만 치고 tab키 사용하면 자동으로 파일이름이 완성된것을 사용할 수 있다.

Advanced Challenge (optional)

  • 권한과 관련된 unix/linux 명령어를 사용할 수 있다. (advanced)
    • sudo
      • 수퍼유저가 두한다.
  1. 관리자만 읽을 수 있는 파일 읽기

    • sudo cat /etc/passwd -> pw물어보면 치면 텍스트출력가능
  2. 새로운 프로그램 설치

    • sudo + 설치명령어 =sudo apt-get install tree(apt는 우분투패키지매니저)
    • 새로운 프로그램 설치 시 Package Manager을 보편적으로 사용.
  3. sudo는 권한 문제를 해결하는 솔루션이 아니다. 필요에 따라 현명하게 사용해야 한다. 가능한 user 권한으로 해결하자. sudo는 한번만 인증하면 그 이후는 인증을 생략하고 사용이 가능하다.

  • 권한?
    권한이란 무엇인가에 대한 궁금증을 풀기 위해 먼저, ls -al의 상세 내용으로 왼쪽부터 차례대로 알아보자!
  1. 접근권한(읽기/쓰기/실행 가능)여부 - chmod명령어

  2. 링크된 파일 갯수

  3. 소유자

  4. 소유그룹

  5. 파일크기

  6. 만들날짜

  7. 만든시간

  8. 파일/디렉토리 이름

    • chown
      • 파일 소유권 변경
      • chown owner:group file
        • sudo chown user:staff testfile.txt -> 소유자가 root였는데 user로 변경되어서 파일을 user로 자유롭게 관리할 수 있음.
  • GUI프로그램 실행 간편한 명령어

    • 현재폴더를 macOS Finder에서 보기
      • open .
    • 현재폴더를 vs code 에디터로 열기
      • code .
  • 자주 사용하게 될 CLI프로그램

    • 버전관리시스템 git
    • 프로그램 추가/ 삭제 -> 패키지매니저(MacOS : Homwbrew)
    • 텍스트 에디터 vim(텍스트파일을 서버상에서 수정해야 할 경우 터미널에서만 수정하여 저장가능)
    • 클라우드 서비스 관리 AWS CLI
  • unix/linux의 파일/디렉토리 소유권에 대해 이해할 수 있다. (advanced)

profile
javascript 공부하는 sumiindaeyo

0개의 댓글