TIL 10일차 - CLI 명령어, 패키지 매니저, Node.js ,nvm,npm

박진현·2021년 6월 23일
0

TIL

목록 보기
10/71

오늘 배운 개념들!

  • pwd:
    -> 현재 위치를 확인하는 명령어! print working directory의 준말
  • mkdir:
    -> 파일을 만드는 명령어 mkdir filename 을 입력하면 된다. make directories의 준말
  • ls:
    -> 폴더나 파일의 목록을 출력하는 명령어. list의 준말
    ls -a 를 입력할 경우 모든 폴더/파일 목록을 출력하고 ls -l 를 할 경우 읽기/쓰기 권한자와 폴더 소유자를 나타낸다. 가령 drwx------@ 와 같이 나타나는데, 제일 앞 글자가 d일경우 폴더 -일경우 파일을 나타내며 -을 제일 앞 한글자를 제외한 rwx --- ---은 앞에 3글자씩 사용자/그룹/다른사용자 를 의미하며 r은 읽기 w은 쓰기 x는 실행 을 나타낸다. r,w,x 대신 - 가 들어가 있다면 해당 행동은 권한이 없다는 뜻!
  • open:
    ->open 파일/폴더 이름 을 입력하면 파일 탐색기로 열어준다. 'open .' 을 입력하면 현재 폴더를 연다
  • cd:
    -> 폴더에 진입하는 명령어. cd .. 을하면 이전폴더로 cd filename 하면 해당 폴더로 진입시켜준다.
    change directory의 준말
  • touch:
    -> 새로운 파일을 생성하는 명령어. touch text1.txt 을 하면 해당 폴더에 text1.txt파일이 생성된다. jpeg나 png등등 다른 확장자들도 생성 가능
  • cat:
    -> 파일의 내용을 터미널에 출력하는 명령어. cat text1.txt을 입력하면 text1.txt에 적혀있는 글을 터미널에 출력해준다. 다만 글이 너무 많으면 로딩하는데 오래걸리니 cat대신 head나 tail 같은 다른 명령어를 사용하는것이 좋다.
  • rm:
    -> 폴더나 파일을 삭제하는 명령어. remove의 준말
    rm 폴더이름 을 입력하면 폴더를 삭제시켜준다(휴지통으로 가는 것이 아니라 컴퓨터에서 완전히 지워져버린다. 조심해서 사용해야 할 기능) 만약 폴더내에 파일이나 다른 폴더가 있다면 삭제가 되지 않는데 이를 해결해주는것이 -r 과 -f 명령어 옵션이다. -r은 recursive의 약자로 재귀를 뜻하며 -f는 force의 약자로 강제를 뜻한다. rm -r 폴더이름 을 입력하면 폴더내에 다른 파일/폴더가 있더라도 삭제가 가능하며 rm -f를 사용할 경우 보호되거나 존재하지 않는 파일도 강제로 삭제할 수 있다. -r이나 -f를 쓸때 흔히 -rf를 같이 쓴다. rm -rf를 할땐 꼭 해당 디렉터리의 위치를 확인해야한다. 모두 날려먹는 실수를 절대절대 하지 말 것!!!
  • mv:
    -> 폴더나 파일의 위치를 이동하거나, 이름을 변경하는 명령어. move의 준말
    mv 파일/폴더이름(1) 폴더이름(2) 을 입력하면 파일/폴더이름(1)이 폴더이름(2)안으로 들어가게된다. mv 파일(1) 파일(2)를 입력하면 파일(1)이 파일(2)로 이름이 변경된다.
  • cp:
    -> 폴더나 파일을 복사하는 명령어. copy의 준말 cp [원본파일이름] [복사할파일이름]
    주의) cp명령어로 폴더를 복사할땐 꼭 명령어 옵션 -r을 사용해야한다!
  • sudo:
    -> 관리자(root)권한을 임시로 사용하는 명령어. superuser do의 준말이다
  • /:
    -> 루트 디렉토리
  • ~:
    -> 홈 디렉토리
  • 절대 경로의 시작
    -> /
  • 상대 경로의 시작
    -> .
  • brew update:
    -> 패키지의 업데이트 여부 확인
  • brew outdated:
    -> 업데이트 필요한 파일 조회
  • brew upgrade:
    -> 프로그램 업그레이드
  • brew info:
    -> 프로그램의 정보 확인
  • brew install:
    -> 프로그램 설치
  • brew list:
    -> 설치된 프로그램 목록 보기
  • brew uninstall:
    -> 프로그램 삭제
  • 명령어 node를 이용해 JavaScript 파일을 실행할 수 있다.
    -> node 파일이름.js
  • npm install?
    -> npm은 Node Package Manager로 남들이 만들어놓은 모듈들을 가져오는데 사용한다.
    프로그램을 실행하고 테스트하기 위해선 모듈과 cli명령어가 적혀있는 package.json 파일이 꼭 필요하다. package.json 파일에 적혀있는 필요한 모듈들을 npm install을 통해 다운받고 node_modules에 저장된다. (package.json은 일종의 사용설명서라고 생각하면 편하다)
  • .json에서 devDependencies란?
    -> 이 프로젝트를 개발하는 환경에서 필요한 모듈들이 무엇인지가 적혀있다.프로그램 실행과는 관계가 없고 개발을 위해서만 필요한 개발자를 위한 디펜던시모듈이다.
  • .json에서 dependencies란?
    -> dependencies는 devDependencies와는 다르게, 이 프로그램이 돌아가기 위해 반드시 필요한 모듈들이 무엇인지가 적혀있다.
  • .json에서 scripts 란?
    -> CLI에서 사용가능한 명령어 npm script 라고 불린다.

Quiz!

1) 폴더 "Hello World"를 생성하고, 생성한 폴더로 진입하려고할때 CLI 명령어를 입력하세요.

mkdir Hello\World
cd Hello\World

2) 텍스트 파일 t1.txt, t2.txt, t3.txt를 생성하였습니다.
파일 t1.txt에는 "Hello"를 입력하였습니다.
파일 t2.txt에는 "World!"를 입력하였습니다.
파일 t3.txt에는 "Good\ Bye!"를 입력하였습니다.

cat t1.txt t2.txt t3.txt를 입력했을 때, 터미널에 출력된 결과를 입력하세요.

Hello
World!
Good Bye!

3)touch t1.txt를 이용해 새로운 파일을 생성했습니다.
폴더나 파일을 삭제하는 명령어 rm을 이용해 t1.txt 파일을 삭제한 경우, 휴지통에서 t1.txt 파일을 복구할 수 있을까요?

없습니다 rm을 이용하여 삭제하면 컴퓨터안에서 완전히 삭제됩니다.. 조심해서 씁시다!

4)touch t2.txt 명령어를 입력해, 새로운 파일을 생성했습니다.
명령어 mv를 이용해 t2.txt 파일의 이름을 t3.txt로 변경하려고 합니다. 알맞은 명령어는?

mv t2.txt t3.txt

5)현재 위치는 ~/helloWorld/hello/ 입니다.
다음은 hello 폴더에서 명령어 ls를 입력한 결과입니다.
you_are_the_best hi.txt
폴더 you_are_the_best를 상위 폴더로 복사하려고 할 때, 알맞은 명령어는?

cp -rf you_are_the_best ../
또는
cp -rf you_are_the_best ~/helloWorld/

6)명령어 cd를 이용해 hello 폴더로 진입하려고 합니다. 알맞은 명령어는?

pwd
# ~/helloWorld/
ls
# hello/      hi/      bye.txt      test.js

cd hello

오늘의 회고

오늘은 정말 새로운 개념들을 끝없이 배웠다! 개발자에 한층 더 가까워진 기분이라 너무 즐겁고 재미있다!!!
근30년을 살아오면서 공부가 이렇게까지 재밌었던적이 없었는데.. 하루라도 더 빨리 시작해볼걸 후회가된다

profile
👨🏻‍💻 호기심이 많고 에러를 좋아하는 프론트엔드 개발자 박진현 입니다.

0개의 댓글