Bash는 정말 강력하면서 간단한 Shell입니다. 하지만 더 간단하고 이쁜 게 있었어요. 플러그인으로 기능 추가도 되는 Shell입니다.
Oh My Zsh 에 플러그인 두 개를 설치하고 한 3주 정도 써봤는데, 제가 느꼈던 좋은 점들은..
- 경로 자동 완성
- 스펠링 검사
- 명령어 자동 완성
- git
- tab 키를 이용한 경로 선택
- 디렉토리 이동 alias
- 생각나지 않는 여러 기능들과 내가 모르는 기능들 등등
/usr/local/bin 은 /u/lo/b + tab 으로 완성됩니다. 경로가 하나일 때만 전체 경로가 자동으로 완성돼요.
없는 명령어는 빨간색으로 표시됩니다. 있는 명령어는 초록색으로 표시돼요. 그리고 quote 안의 문자열은 노란색으로 표시됩니다. 또한 스펠링 검사 및 제안 기능도 있습니다.
history 기반으로 명령어(command line)가 자동 완성됩니다. 만약 이전에 복잡한 명령어를 입력한 적이 있을 때, 그 명령어를 똑같이 치려할 때 자동으로 완성해줍니다.
자주 쓰는 git 관련 명령어들이 3, 4 글자 내외로 alias 되어 있습니다. git status 는 gst 만 입력하시면 돼요. 또한 git repository 디렉토리로 이동하면 작업중인 branch와 간단한 status를 확인할 수 있어요.
ls -al /dev/sd... 뭐더라? 하면서 tab을 누르곤 합니다. 이 때 나열되는 경로들을 4방향 방향키로 선택할 수 있어요. 기존엔 tab으로 확인 후 그대로 조금 입력해서 다시 tab으로 완성시키거나 tab을 여러번 눌렀죠.
"~" 만 입력하면 home 디렉토리로 이동합니다. ".." 은 "cd ..", "..." 은 "cd ../../" 입니다. 그리고 "-" 를 입력하면 바로 직전에 있었던 디렉토리로 이동해요. "1"..."9" 는 각각 "cd -1"..."cd -9" 입니다. 편해요.
설치해보세요. 사용하다 마음에 안 들면 기본 쉘을 다시 Bash로 바꾸면 됩니다.
간단합니다. 먼저 zsh를 설치해주세요. curl이 없다면 curl도 설치해야 합니다.
macOS
brew install zsh zsh-completions
Ubuntu/Debian
sudo apt install zsh
Oh My Zsh을 설치합니다.
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
자동으로 설치가 진행되고, 마지막에 zsh를 기본 쉘로 지정하기 위해 현 사용자 계정의 비밀번호를 입력합니다.
바로 플러그인 2개를 설치해줍니다.
# zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
# zsh-autosuggestions
git clone git://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM/plugins/zsh-autosuggestions
플러그인을 적용시키기 위해 .zshrc를 수정합니다. 아래처럼 plugins=( ) 에 zsh-... 두 줄을 추가하면 됩니다.
vi ~/.zshrc
...
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(
git
zsh-syntax-highlighting
zsh-autosuggestions
)
...
source ~/.zshrc
다 설치됐어요. 간단한 예시 스크린샷을 보여드릴게요.
아래 스크린샷은 없는 명령어를 입력할때와 명령어 자동 완성 예시입니다. 보시면 바로 이해가 될 거예요.
스펠링 검사 기능을 켠 뒤 테스트해봤습니다.
그리고 git repository 디렉토리로 이동했을 때 입니다.
제 생각엔 현 시점에서 가장 모던한 쉘인 것 같습니다. 테마도 바꿀 수 있다고 하구요. macOS나 Linux 사용자라면 설치해보는 것을 추천합니다.
- https://ohmyz.sh/
- https://subicura.com/2017/11/22/mac-os-development-environment-setup.html
- http://stackabuse.com/zsh-vs-bash/
- https://stackoverflow.com/questions/800182/what-does-nyae-mean-in-zsh
'Programming > OS, Program, Framework Tip' 카테고리의 다른 글
VMware Workstation 14 - 커널 업데이트 후 먹통 고치기 (0) | 2018.04.05 |
---|---|
Adapta-gtk-theme - 가장 Material한 리눅스 테마 (Ubuntu 17.10 이상) (5) | 2018.02.25 |
ShellCheck - 쉘(e.g. 배쉬) 스크립트 문법 검사 툴 (0) | 2018.01.24 |
우분투 17.10 - Gtk-WARNING cannot open display 고치는 방법 (1) | 2017.12.13 |