환경
Ubuntu 22.04.3 LTS
zsh 5.8.1 (x86_64-ubuntu-linux-gnu)
GNU bash, version 5.1.16(1)-release (x86_64-pc-linux-gnu)
참고 문서: Installing ZSH · ohmyzsh/ohmyzsh Wiki (github.com)
zsh 설치 및 기본 셀 변경
아래 명령어로 zsh
설치.
sudo apt install zsh
/etc/passwd
에서 원하는 계정의 shell을 /bin/zsh
로 변경.
shell을 변경하는 방법은 다음 글을 참고.
2023.09.08 - [Linux] - [zsh] 사용자 Shell 확인 및 변경하기.
이후 터미널을 재시작하면 다음과 같이 zsh
를 설정화면이 뜸:
This is the Z Shell configuration function for new users,
zsh-newuser-install.
You are seeing this message because you have no zsh startup files
(the files .zshenv, .zprofile, .zshrc, .zlogin in the directory
~). This function can help you with a few settings that should
make your use of the shell easier.
You can:
(q) Quit and do nothing. The function will be run again next time.
(0) Exit, creating the file ~/.zshrc containing just a comment.
That will prevent this function being run again.
(1) Continue to the main menu.
(2) Populate your ~/.zshrc with the configuration recommended
by the system administrator and exit (you will need to edit
the file by hand, if so desired).
--- Type one of the keys in parentheses ---
oh-my-zsh
를 설치할 예정이므로0
을 선택하여 일단~/.zshrc
파일을 생성만 한다.
oh-my-zsh
설치
다음 명령어로 oh-my-zsh
를 설치.
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
wget
이 없으면 동작하지 않음.- 이 경우
sudo apt install wget
으로 먼저wget
을 설치하고 수행.
다음과 같은 화면이 보임.
--2023-09-11 11:57:40-- https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 2606:50c0:8001::154, 2606:50c0:8002::154, 2606:50c0:8003::154, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|2606:50c0:8001::154|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 18209 (18K) [text/plain]
Saving to: ‘STDOUT’
- 100%[========================>] 17.78K --.-KB/s in 0s
2023-09-11 11:57:40 (102 MB/s) - written to stdout [18209/18209]
Cloning Oh My Zsh...
remote: Enumerating objects: 1358, done.
remote: Counting objects: 100% (1358/1358), done.
remote: Compressing objects: 100% (1306/1306), done.
remote: Total 1358 (delta 33), reused 1122 (delta 28), pack-reused 0
Receiving objects: 100% (1358/1358), 2.00 MiB | 10.04 MiB/s, done.
Resolving deltas: 100% (33/33), done.
From https://github.com/ohmyzsh/ohmyzsh
* [new branch] master -> origin/master
Branch 'master' set up to track remote branch 'master' from 'origin'.
Already on 'master'
/home/ubuntu
Looking for an existing zsh config...
Found /home/ubuntu/.zshrc. Backing up to /home/ubuntu/.zshrc.pre-oh-my-zsh
Using the Oh My Zsh template file and adding it to /home/ubuntu/.zshrc.
__ __
____ / /_ ____ ___ __ __ ____ _____/ /_
/ __ \/ __ \ / __ `__ \/ / / / /_ / / ___/ __ \
/ /_/ / / / / / / / / / / /_/ / / /_(__ ) / / /
\____/_/ /_/ /_/ /_/ /_/\__, / /___/____/_/ /_/
/____/ ....is now installed!
Before you scream Oh My Zsh! look over the `.zshrc` file to select plugins, themes, and options.
• Follow us on Twitter: https://twitter.com/ohmyzsh
• Join our Discord community: https://discord.gg/ohmyzsh
• Get stickers, t-shirts, coffee mugs and more: https://shop.planetargon.com/collections/oh-my-zsh
➜ ~
이제 oh-my-zsh
의 테마와 plugin들을 설치해야한다.
NerdFont설치하기
테마를 제대로 사용하려면 우선 NerdFont와 같은 icon등을 지원하는 font설치가 필요하다.
font 설치는 다음 글을 참고하라.
2023.07.14 - [개발환경] - [Env] Install a NerdFont on Ubuntu
powerlevel10k 테마로 변경.
oh-my-zsh
는 다양한 테마를 제공한다.
개인적으로 powerlevel10k
를 가장 애용한다.
https://github.com/romkatv/powerlevel10k
다음 명령어로 powerlevel10k
를 clone을 수행.
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
다운로드받은 powerlevel10k
를 적용하기 위해 ~/.zshrc
를 수정.
sudo vi ~/.zshrc
- 초보자라면
vi
보다nano
를 사용하라.
https://dsaint31.tistory.com/473
https://dsaint31.tistory.com/444
해당 파일에서 ZSH_THEME
를 설정하는 라인을 찾고 다음으로 변경.
ZSH_THEME="powerlevel10k/powerlevel10k"
이후 다음 명령어를 수행하면 powerlevel10k
테마 설정이 시작됨.
source ~/.zshrc
- 설정에서 주로 icon 문자가 제대로 보이는지를 물어본다.
- 개인적으로 unicode, twoline과 round 등의 스타일을 애용함.
p10k configure
를 수행하면 재설정이 가능하니 너무 부담을 가지지 않아도 된다.
설정 첫화면은 다음과 같음 (가운데의 diamond 문자가 보이는지를 물어봄).
설정을 다하고 나면, oh-my-zsh
에 적용이 된 다음과 같은 화면을 볼 수 있음.
환경 설정파일들 편집
이후, ~/.bashrc
에서 conda
등의 설정을 ~/.zshrc
에 똑같이 기재해주면 된다.~/.profile
에 있는 내용은 다음 글을 참고하여 ~/.zprofile
에 적용시킨다.
2023.09.08 - [개발환경] - [zsh] .profile의 설정을 .zprofile로 ...
zsh에서 자주 사용되는 Plug-in설치
~/.zshrc 파일에서 plugins 을 찾아서 다음과 같이 sudo와 colored-man-pages를 추가해준다.
plugins=(
git
sudo
colored-man-pages
)
sudo 의 경우, 명령어를 입력하다 esc를 두번 누르면 앞에 sudo가 붙여주는 플러그인임.
colored-man-pages 의 경우, man으로 명령어에 대한 메뉴얼을 볼 때 highlighting이 되어 보다 읽기 쉽게 해줌.
이외에도 많이 사용되는 plugin은 zsh-syntax-highlighting과 zsh-autosuggestions 등이 있음.
2023.09.08 - [개발환경] - [zsh] zsh-syntax-highlighting 설치.
2023.09.08 - [개발환경] - [zsh] zsh-autosuggestions
'Linux' 카테고리의 다른 글
[Linux] 터미널 종료와 상관없이 지속 실행되는 process 만들기 : nohup, tmux (0) | 2023.09.29 |
---|---|
[Linux] Pipe(|)와 다중 명령어 (;, &&, ||) (0) | 2023.09.12 |
[Tip] 특정 문구가 있는 process들을 모두 kill (0) | 2023.09.08 |
[Tip] 특정 port 사용 중인 프로세스 종료시키기 (0) | 2023.09.08 |
[Command] lsof : 열린 파일 혹은 port 관련 정보 출력 (0) | 2023.09.08 |