IT종사자들을 위한 Mac OS 터미널 커스텀 세팅
IT/DevOps

IT종사자들을 위한 Mac OS 터미널 커스텀 세팅

반응형

IT종사자들을 위한 Mac OS터미널 세팅

IT개발자들이나 DevOps담당자들이 맥북을 사용하는 가장 큰 이유 중 하나가 유닉스(FreeBSD) 기반으로 터미널을 사용할 수 있다는 것입니다. 이 맥북의 장점을 극대화시켜 줄 수 있도록 터미널 환경을 세팅 해보겠습니다.

  1. 먼저 맥북의 기본터미널 대신 다양한 테마를 제공하는 iterm을 설치합니다.
  2. 맥북을 개발용으로 사용하기 위해 기본 Shell인 bash쉘대신 zsh쉘을 사용하도록 설정 합니다.
  3. oh-my-zsh를 사용해 여러 플러그인을 설치하여 터미널의 다양한 기능을 추가합니다.(autojump, autosuggestions, syntax highlighter)

iterm2 설치

iterm 홈페이지에 접속하여 iterm을 설치합니다. 버전은 stable realease 중 최신 버전을 받으시면 됩니다.

Home Brew 설치

Home Brew는 맥북용 프로그램 패키지 관리 프록램입니다. 우분투의 apt-get이나 Redhat의 yum 과 같다고 보시면됩니다.
아래 명령어를 입력하여 설치합니다.

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

zsh 설치 및 설정

brew install zsh
which zsh /bin/zsh
chsh -s 'which zsh

oh my zsh 설치

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

oh my zsh 플러그인 설치 및 설정

  1. autosuggestion 플러그인
    이 플러그인은 이전에 내가 사용한 명령어를 저장해두고 history기반으로 추천해주는 기능입니다.
    예를들어 cd /etc/ssh 를 한번이라도 썻던 적이있으면 이 기능을 통해 자동으로 글자를 완성할 수 있습니다.

brew install zsh-autosuggestions
echo "source /usr/local/share/zsh-autosuggestions/zsh-autosuggestions.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
source ~/.zshrc

  1. autojump 플러그인
    이 플러그인은 이전에 내가 들어가본 폴더가 있으면 경로를 모두 입력하지 않아도 한번에 점프하여 들어갈 수 있습니다.
    예를들어 cd /etc/ssh 로 ssh폴더에 접근한 히스토리가 있으면 j ssh 만해도 /etc/ssh 경로로 접근가능합니다.

brew install autojump
echo "plugins=(autojump)" >> ${ZDOTDIR:-$HOME}/.zshrc
source ~/.zshrc

  1. syntax highlighter 플러그인
    해당 명령어가 유효한 명령어인지 아닌지 구분해주는 플러그인 입니다. 명령어가 없는경우 빨간색으로 보여줍니다.

cd ~/.oh-my-zsh/custom/plugins
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git
echo "source ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc
$ source ~/.zshrc

iterm 테마 설치 및 설정하기 (드라큘라)

git clone https://github.com/dracula/zsh.git
cp dracula.zsh-theme ${ZDOTDIR:-$HOME}/.oh-my-zsh/themes/dracula.zsh-theme

~/.zshrc 파일을 열어서 ZSH_THEME를 찾아 dracula로 바꿔줍니다.
ZSH_THEME="dracula"

여기까지 개발하기 좋은 환경으로 터미널을 세팅해보았습니다.
혹시 문의가 있으시면 댓글로 답변 드리겠습니다.

반응형