TIL-25_2020.04.05 (homebrew, nvm, node.js)

Jiwoo Joy Kim (zuzokim)·2021년 4월 6일
0

TIL

목록 보기
28/30
post-thumbnail

macOS 운영체제를 위한 패키지 매니저 : 🍺 Homebrew

개발도구 및 프로그램 설치, 제거, 업그레이드를 자동화하는 소프트웨어 도구들의 모임.

  • 터미널을 열어 cli로 설치한다. Homebrew 사이트에서 설치 스크립트를 복사해주기만 하면된다. 이때 'ctrl + c 키'를 이용해 작업을 취소(강제 종료)해 사용자 입력을 다시 되찾아올 수 있다.
  • 터미널 메세지를 잘 읽어야 한다. 에러 메세지든 설치 완료 메세지든 잘 읽어보면 문제가 생겼을 때 해결할 수 있다.
  • brew 명령어: brew install, brew list...
  • M1애플 실리콘 사용시 인텔칩 기준으로 만들어진 프로그램을 설치하기 위해서는 로제타를 설치해야한다는 점!

wget

URL를 통해 파일을 다운로드 받을 수 있는 프로그램.

Javascript Runtime 🏊‍🏊‍🏊

런타임 = 프로그래밍 언어가 구동되는 환경. 프로그램이 동작하는 곳.
자바스크립트 런타임 = 웹브라우저(크롬, 사파리...), node.js

  • cli 명령어:
    cd : change directory
    mkdir : make directory
    pwd : print working directory
    touch index.html : index.html 파일 생성
    cat : concatenate 파일 읽기
    echo "hello world" > index.html : 내용 입력 후 파일 생성
    rm : remove 파일 삭제
    rmdir : remove directory

  • node.js 실행명령어 : node 폴더명/파일명 으로 자바스크립트 파일을 테스트실행해보려고 했는데,
    node : command not found 에러가 났다!ㅠ
    -> 해결

  1. node-v로 버전체크를 해보았는데 체크가 되지 않았다.
  2. brew uninstall node로 삭제 후
  3. 재설치!
    (에러가 난 이유는 정확히 잘 모르겠다. 검색해보니 환경변수/경로 문제일 수 있다고 하는데 나중에 다시 알아봐야겠다.)

nvm(Node Version Manager)
패키지 매니저처럼 node.js의 버전을 관리할 수 있도록하는 프로그램.

  • 설치: wget으로 설치하고, nvm --version으로 버전 체크를 하려고 하니, 이번엔 bash: nvm: command not found 에러가 났다!
    ->해결
  1. '환경변수' 설정이 필요하다는 것을 알게 됐다. bash / zsh 쉘의 차이에 대해서는 좀 더 공부해봐야겠다.
vi ~/.bash_profile

export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

:wq //저장 후 quit

source ~/.bash_profile

위의 스크립트 추가 후 터미널을 재실행하면 된다는 해결법을 찾았는데, 처음엔 잘 안되었다. 그러다가 아래와 같은 터미널 메세지를 간과하고 있었고,

You should create NVM's working directory if it doesn't exist:
mkdir ~/.nvm

  1. 디렉토리를 만들어 주고나니 드디어 버전체크에 성공했다. 하루종일 node.js 설치를 하면서 터미널 메세지에 모든 답이 있다!는 것을 깨닫는 오늘..

  2. nvm --version 체크 후
    nvm install --lts (Long Term Support) 설치 / nvm install 버전넘버
    node -v 노드 버전 체크.
    nvm use 버전넘버 --> 개발을 하다보면 다양한 node.js 버전에 대응해야하는 경우가 생기는데, 이렇게 명령어를 사용하면 이미 설치된 버전을 삭제하지 않고, 원하는 버전을 설치할 수 있어 편리하다.

profile
- I make something! ✍🏽👩🏻‍💻🎬🎨💖🪑🔨🔜

0개의 댓글