oh my zsh? Shell?

2nchanter·2021년 8월 21일
0
post-thumbnail

0821_ 크래프톤 간 친구놈이 내 Mac에 'oh my zsh'라는 뭔가를 깔아놓고 갔다.

뭔지도 모르는 나한테 '나중에 고마워할거야!'라는 말을 남긴 채.
이제 Pycharm 안쓰고 VScode도 쓰려고 마음먹은 마당에 뭔지 좀 찾아보자.

ZSH?

Z쉘, Bourne Shell의 확장 버전.

BSH?

본 셸는 유닉스 버전 7의 기본 유닉스 셸이었다. 톰프슨 셸을 대체하는 셸로서 실행파일 이름이 sh로서 같다.

Shell?

쉘은 내가 컴퓨터에게 명령을 내릴 수 있도록 도와주는 강력한 도구.
유닉스 계열의 운영체제는 보통 텍스트 모드의 터미널 화면에서 명령행에 명령어를 타이핑 하여 사용한다. 이 명령어를 해석하는 프로그램이 쉘(shell)이다. 즉 쉘은 명령어 해석기 또는 명령행 인터페이스를 의미한다. 쉘을 사용하는 것은 윈도우의 '명령 프롬프트'에서 명령을 실행하는 것과 유사하지만 리눅스의 쉘은 훨씬 강력한 기능을 제공한다.
또한 쉘은 스크립트 언어이기도 하다. 쉘 명령어로 구성된 쉘 스크립트 프로그램을 작성하면 쉘이 스크립트 파일을 읽어 일련의 명령을 수행할 수 있다. 여러 명령을 사용해 반복적으로 수행하는 작업을 하나의 프로그램으로 제작 할 수 있다. 매번 같은 작업을 반복하지 않고 파일에 기록하여 편리하게 이용할 수 있다는 점이 사용 이유.
쉘은 운영체제의 일부이며 커널과는 분리된 프로그램이다. 쉘의 종류에 따라 alias 설정, 초기화 파일, 스크립트 작성 등에서 다른 특성을 가질 수 있다. 리눅스 사용자는 자신이 선호하는 쉘을 기본 쉘로 설정하여 사용할 수 있다.
+) 리소스에 민감한 작업들, 특히 속도가 중요한 요소일 때(정렬, 해쉬 등등)는 사용하지 말자.

  • 현재 사용하는 쉘 확인하기.
echo $SHELL

/bin/zsh 이렇게 '지금 zsh임!' 하고 나온다.

  • 변경 가능한 shell 확인
/bin/sh

왜 zsh?

자동 CD : 디렉토리 이름을 입력하십시오.
재귀 경로 확장 : 예를 들어 “/ u / lo / b”는 “/ usr / local / bin”으로 확장됩니다.
철자 교정 및 대략적인 완성 : 디렉토리 이름을 입력하는 데 약간의 실수가 있으면 ZSH가이를 수정합니다.
플러그인 및 테마 지원 : ZSH에는 다양한 플러그인 프레임 워크가 포함되어 있습니다
플러그인과 테마 지원은 아마도 ZSH의 가장 멋진 기능 일 것이며 여기서 초점을 맞출 것입니다.

  • 사용하고 있는 플러그인 확인
    .zshrc 내부 확인

아니 이친구가...


왜 내꺼는 위에처럼 plugins에 안들어있는데 동작하지? 했는데

코드로 그냥 동작시키게 해놨다는 답변이.

NVM?

Node Version Manager

일단 설치 명령어들은 다음과 같습니다.
install, uninstall 뒤에 인자로 오는 문자열은 version-like 이라면 모두 가능합니다. 예를 들면...

# node.js 버전 설치하기
$ nvm install 0.10
$ nvm install v0.1.2
$ nvm install v8

# node 최신 버전 설치 (설치 당시 기준)
$ nvm install node

# node LTS 최신버전 설치
$ nvm install --lts

기타 명령어들은 다음과 같습니다.

# 설치된 node.js 목록 확인하기
$ nvm ls

# 설치할 수 있는 모든 Node 버전 조회 (재미삼아 해보지마세요 겁나많음... 황급히 control C 두드리기)
$ nvm ls-remote

# 특정 버전의 node 사용하기
$ nvm use <version>

# 현재 사용중인 버전 확인하기
$ nvm current

# node.js 설치 경로 확인하기
$ which node

# 필요없는 node 버전 삭제하기
$ nvm uninstall <version>

만일 새로운 쉘을 실행할 경우 node 의 버전이 system 버전으로 리셋되는데요, 이를 고정하기 위한 커맨드는 다음과 같습니다.

$ nvm alias default 8.9.4 

# 설치되어 있는 가장 최신버전의 node를 디폴트로 사용하기
$ nvm alias default node
터미널을 다시 시작해 확인해 보면 디폴트로 설정된 노드가 실행될 거예요.

autojump?

autojump는 여러변의 cd명령을 통해서 디렉터리를 바꾸는 것을 간단히 j 명령을 통해서 한번에 이동하도록 하는 굉장히 유용한 플러그인 입니다. 설치한 세 플러그인 중 가장 좋다고 생각합니다.

highlighting

systax highlightingh은 명령어와 미리보기등을 구분하기 쉽게 하이라이팅 해주는 플러그인 입니다. 위에 보이는 gif처럼 bre만 입력했을땐 빨간색으로 brew가 완성되었을땐 초록색으로 하이라이팅 해줍니다. 미리보기 또한 회색으로 보여주며 완성되었을때 흰색으로 하이라이팅 해주어 아주 보기 좋습니다.


0822_ VSC 시작영상 찾다가 니코쌤 영상보고 세팅완료.


📚 Reference
프로처럼 세팅하자! iTerm, VSC 셋업 | Setting up iTerm and VSC


0개의 댓글