๊ธฐ๋ณธ ํฐ๋ฏธ๋ Zsh ์ ์ฉ
1. zsh๋?
zsh(z shell)๋ ํ๋ชจ๋์นด ์ฌ์ฉ์์๊ฒ ํฐ๋ฏธ๋ ํ๊ฒฝ์ ์ฌ์ฉ์ฑ์ ๊ฐ์ ํด์ฃผ๋ ์ ์คํฌ๋ฆฝํธ ์ ๋๋ค.
zsh์ ๋ ์์ธํ ์ค๋ช ์ https://github.com/hamonikr/hamonikr-zsh ์์ ํ์ธํ ์ ์์ต๋๋ค.
zsh ์ค์น
ํฐํธ์ค์ ๋ณ๊ฒฝ
zsh์ ๊ธฐ๋ฅ ๋ฐ ์ฌ์ฉ๋ฒ
2. zsh ์ค์น
ํ๋ชจ๋์นด ์ด์์ฒด์ ๋ ๊ธฐ๋ณธ์ ์ผ๋ก hamonikr-zsh๋ฅผ ๊ธฐ๋ณธ ์๋ก ์ ๊ณตํ๊ณ ์์ผ๋ฉฐ, POWERLEVEL9K ํ ๋ง์ ์์ฃผ ์ฌ์ฉํ๋ ๋ช ๋ น์ด๋ฅผ Alias๋ก ์ ๊ณตํ๊ณ ์์ต๋๋ค.
- $ cat ~/.zshrc

zsh๋ฅผ ์ฌ์ค์น ํ์๊ฑฐ๋ ๋ฐ๋น์ ๊ณ์ด์์ ์ฌ์ฉํ์ค ๊ฒฝ์ฐ ์๋ ๊นํ๋ธ hamonikr-zsh ๋ ํฌ์งํ ๋ฆฌ๋ก ์ด๋์ ํ์ ์ ์ต์ ํจํค์ง๋ฅผ ๋ค์ด๋ฐ์ ์ค์น๋ฅผ ์งํํ์๋ฉด ๋ฉ๋๋ค.
2.1 ์ต์ ํจํค์ง ๋ค์ด๋ก๋
์๋์ ๋งํฌ๋ฅผ ํตํด ์ต์ ํจํค์ง๋ฅผ ๋ค์ด๋ก๋.
2.2 zsh ํจํค์ง ์ค์น
์ต์ ํจํค์ง๋ฅผ ๋ค์ด ๋ฐ์ผ์ ํด๋๋ก ์ด๋์ ํ์ ํ ์ค์น๋ฅผ ์งํํฉ๋๋ค

์ ์์ ์ผ๋ก ์ค์น๊ฐ ์๋ฃ๋๋ฉด ํฐ๋ฏธ๋์ ์ด์์ ๋ ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ณด์ฌ์ง๋๋ค.

3. ํฐํธ์ค์ ๋ณ๊ฒฝ
ํฐ๋ฏธ๋์ ์ด๊ณ "ํธ์ง" ๋ฉ๋ด์์ "๊ธฐ๋ณธ ์ค์ " ํญ๋ชฉ์ ํด๋ฆญํ์๋ฉด "๊ธฐ๋ณธ ์ค์ " ์ฐฝ์ ํ์ฑํ๋ฉ๋๋ค.

ํ์ฑํ๋ "๊ธฐ๋ณธ ์ค์ " ํ๋ฉด์์๋ "hamonikr"์ด ๊ธฐ๋ณธ ์ค์ ์ผ๋ก ์ง์ ๋์ด ์์ผ๋ฉฐ, ํ๋กํ์ผ์ ์ถ๊ฐํ์ฌ ์์ ๋ง์ ์คํ์ผ๋ก ๋ง๋ค์ด ์ฌ์ฉํ์ค ์ ์์ต๋๋ค.
"๊ธฐ๋ณธ ์ค์ " ํ๋ฉด์ ์ข์ธก ๋ฉ๋ด์ ํ๋กํ์ผ -> "hamonikr" ํ๋กํ์ผ์ ํด๋ฆญํ ํ "์ฌ์ฉ์ ์ง์ ๊ธ๊ผด"์ ํด๋ฆญํ๋ฉด ํฐ๋ฏธ๋ ๊ธ๊ผด ์ ํ ํ๋ฉด์ด ๋ณด์ฌ์ง๋ฉฐ, ์ํ์๋ ๊ธ๊ผด๊ณผ ํฐํธ ํฌ๊ธฐ๋ฅผ ์ง์ ํ์ฌ ์ค์ ์ ์๋ฃํ์๋ฉด๋ฉ๋๋ค.

4. zsh์ ๊ธฐ๋ฅ ๋ฐ ์ฌ์ฉ๋ฒ
ํ๋ชจ๋์นด์ ์ค์น๋ zsh์ ์ฃผ์๊ธฐ๋ฅ๋ค์ ์ค๋ช ํฉ๋๋ค.
4.1 autojump
autojump๋ ์ฌ๋ฌ๋ฒ์ cd ๋ช ๋ น์ ํตํด์ ๋๋ ํฐ๋ฆฌ๋ฅผ ๋ฐ๊พธ๋ ๊ฒ์ ๊ฐ๋จํ j ๋ช ๋ น์ ํตํด์ ํ๋ฒ์ ์ด๋ ๊ฐ๋ฅํ๊ฒ ํ๋ ๊ธฐ๋ฅ์ ๋๋ค.
autojump ์ต์ ์ autojump --help์์ ํ์ธ์ด ๊ฐ๋ฅํฉ๋๋ค.
(โป j ๋ช ๋ น์ด๋ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๊ธฐ ์ด์ ์ ์ด๋ํ์ ์ด ์์๋ ๋๋ ํ ๋ฆฌ์ ํํด์ ์ฌ์ฉ ๊ฐ๋ฅ)
4.1.1 j ๋ช ๋ น์ด
์๋ฅผ๋ค์ด 'tomcat10' ์ ํฌํจํ๋ ๋๋ ํ ๋ฆฌ๋ก ์ด๋ํ๊ณ ์ถ์ ๊ฒฝ์ฐ: ํฐ๋ฏธ๋์ j tomcat10 ์ ๋ ฅ
์ด๋ ์์ ํ์ผ๋ช ์ ๋๊น์ง ์ ๋ ฅํ์ง ์์๋(j to ํน์ j t) ๊ฒน์น๋ ํ์ผ ์ด๋ฆ์ด ์กด์ฌํ์ง ์์ผ๋ฉด ์ด๋์ด ๊ฐ๋ฅํฉ๋๋ค.
(ํ์ผ์ด ๊ฒน์น ์์๋ ์ฐ์ ์์๊ฐ ๋์ ๊ณณ์ผ๋ก ์ด๋ - ์ฐ์ ์์ ์ค์ ๋ฐฉ๋ฒ์ 3.1.4์์ ์ค๋ช )

j ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ ๋ ์ด๋ํ ๋๋ ํ ๋ฆฌ์ ์ ์ฒด ๊ฒฝ๋ก๋ฅผ ๋ณด๊ณ ์ถ์ผ๋ฉด j ํ์ผ๋ช ์(์๋ถ๋ถ๋ง ์ ๋ ฅํด๋ ํ์ธ ๊ฐ๋ฅ) ์ ๋ ฅํ๊ณ tab ํค๋ฅผ ๋๋ฒ ๋๋ฌ์ค๋๋ค.
j tomcat10์ ์ ๋ ฅ ํ tabํค๋ฅผ ๋๋ฅด๋ฉด ์๋์ ๊ฐ์ด ๊ฒฝ๋ก ๋ชฉ๋ก์ด ๋์ค๊ณ , ๋ชฉ๋ก์ด ๋์จ ํ tab ํค๋ฅผ ๋ ๋๋ฅด๋ฉด ์๋์ ๊ฒฝ๋ก๋ค๋ก ์ด๋์ด ๊ฐ๋ฅํฉ๋๋ค.
<tab์ ๋ ๋ฒ ๋๋ฌ์ ๊ฒฝ๋ก๊ฐ ๋์จ ํ๋ฉด>

<tab์ ๋ ๋๋ฅด๋ฉด ์๋์ ๊ฒฝ๋ก๋ค๋ก ์ด๋์ด ๊ฐ๋ฅํจ>

4.1.2 jc ๋ช ๋ น์ด
jc ๋ช ๋ น์ด๋ ๋๋ ํ ๋ฆฌ ์ด๋ ๊ธฐ๋ฅ์ j์ ๊ฐ์ผ๋ tabํค๋ฅผ ๋๋ฅด๋ฉด ์ ์ฒด๊ฒฝ๋ก๊ฐ ์๋ ํด๋น ๋๋ ํ ๋ฆฌ์ ํ์ ๋๋ ํ ๋ฆฌ์ ํ์ผ์ ๋ณด์ฌ์ค๋๋ค.
jc ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด ํ์ ๋๋ ํ ๋ฆฌ๋ฅผ ํ์ธํ๋ ค๋ฉด ์์ ๋๋ ํ ๋ฆฌ์์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด์ผํฉ๋๋ค.
<jc๋ฅผ ์ด์ฉํด tomcat10์ ํ์ ๋๋ ํ ๋ฆฌ์ ํ์ผ ํ์ธํ๋ ํ๋ฉด>

<jc๋ฅผ ์ด์ฉํด ํ์ธํ ํ์ ๋๋ ํ ๋ฆฌ ๋ชฉ๋ก๊ณผ ๋์ผํจ>

4.1.3 jo ๋ช ๋ น์ด
jo ๋ช ๋ น์ด๋ ๋๋ ํ ๋ฆฌ๋ก ์ด๋ํ๋ ๋์ ํ์ผ ํ์๊ธฐ ์ฐฝ์ ํด๋น ๋๋ ํ ๋ฆฌ๋ก ์ด ์ ์์ต๋๋ค.
tomcat10๋๋ ํ ๋ฆฌ๋ฅผ ์ด๊ธฐ ์ํด jo tomcat10 ๋ช ๋ น์ด ์ ๋ ฅํ๋ฉด ํ์ผํ์๊ธฐ๊ฐ ๋ณด์ฌ์ง๋๋ค.
<jo๋ฅผ ์ฌ์ฉํด tomcat10 ๋๋ ํ ๋ฆฌ๋ฅผ ์ฌ๋ ๊ณผ์ >


4.1.4 ํ์ผ๋ช ์ด ์ค๋ณต๋ ๋ ์ฐ์ ์์ ์ค์
j ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ ๋ ์ด๋ฆ์ด ๋์ผํ ๋๋ ํ ๋ฆฌ๋ ํ์ผ์ด ์์ผ๋ฉด ์ฐ์ ์์๊ฐ ๋์ ๊ณณ์ผ๋ก ์ด๋ํฉ๋๋ค.
์ฐ์ ์์๋ฅผ ๋์ด๊ณ ์ถ์ ๋๋ ํด๋น ๋๋ ํ ๋ฆฌ๋ก ์ด๋ํด์ autojump --i ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๊ณ , ๋ฎ์ถ๊ณ ์ถ์ ๋๋ autojump --d ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํฉ๋๋ค.
๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๋ฉด ๋ณ๊ฒฝ๋ ์ฐ์ ์์๊ฐ ๋ณด์ฌ์ง๋๋ค.
<tomcat10 ๋๋ ํ ๋ฆฌ์ ์ฐ์ ์์๋ฅผ ๋ณ๊ฒฝํ๋ ํ๋ฉด>

4.2 autosuggestion
์ด์ ์ ์ ๋ ฅํ ์ ์ด ์๋ ๋ช ๋ น์ด๋ ๋ช ๋ น์ ๋ค ์ ๋ ฅํ๊ธฐ ์ ์ ์ ์ ํ์์ผ๋ก ์์ฑ๋ ๋ด์ฉ์ด ํ์๋ฉ๋๋ค.
์ ์ ํ์์ผ๋ก ๋์จ ๋ช ๋ น์ด๋ฅผ ์์ฑ์ํค๋ ค๋ฉด ํค๋ณด๋ ๋ฐฉํฅํค "โ"๋ฅผ ๋๋ฌ์ค๋๋ค.

4.3 syntax-highlighting
๋ช ๋ น์ด ์ค๋ฅ๋ฅผ ์ก์ ๋ ๋ช ๋ น์ ์คํํ๊ธฐ ์ ์ ๊ฒํ ํ๋ ๋ฐ ๋์์ด ๋๋ ๋ช ๋ น์ด ๊ฐ์กฐ ํ์ ๊ธฐ๋ฅ์ ๋๋ค.
๋ง๋ ๋ช ๋ น์ด๋ ์ด๋ก์์ผ๋ก ํ์๋๊ณ , ์๋ชป๋ ๋ช ๋ น์ด๋ ๋นจ๊ฐ์์ผ๋ก ํ์๋ฉ๋๋ค.
<๋ง๋ ๋ช ๋ น์ด>

<์๋ชป๋ ๋ช ๋ น์ด>

4.4 Useful Alias
์์ฃผ ์ฌ์ฉํ๋ ๋ช ๋ น์ด์ ๋จ์ถ์ด๋ฅผ ์ฌ์ฉํด์ ์๊ฐ๊ณผ ๋ ธ๋ ฅ์ ์ ์ฝํ ์ ์๋ ๊ธฐ๋ฅ์ ๋๋ค.
๋จ์ถ์ด๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด ์ฌ์ฉ์๊ฐ ํฐ๋ฏธ๋ ์ฌ์ฉ์ ๊ฐ๋จํ๊ฒ ๊ฐ์ธํํ ์ ์์ต๋๋ค.
4.4.1 ๋ชจ๋ ๋จ์ถ์ด ํ์
ํฐ๋ฏธ๋์ alias ๋ฅผ ์ ๋ ฅํ๋ฉด ๋ชจ๋ ๋จ์ถ์ด ํ์ธ์ด ๊ฐ๋ฅํฉ๋๋ค.

4.4.2 ๋จ์ถ์ด ๋ง๋ค๊ธฐ
alias ๋จ์ถ์ด="์คํํ ๋ช
๋ น์ด"
ํํ๋ก
ํฐ๋ฏธ๋์ ์
๋ ฅํ๋ฉด ๋จ์ถ์ด ์์ฑ์ด ๊ฐ๋ฅํฉ๋๋ค. (๋จ์ถ์ด๋ฅผ ์ค์ ํ ๋ ๋ช
๋ น์ ๋ฑํธ์ ๋ช
๋ น ์ฌ์ด์ ๊ณต๋ฐฑ ์์ด ๋ฐ์ดํ๋ฃ ๋ฌถ์ด์ผ ํฉ๋๋ค. )
๋จ์ถ์ด ์์ฑ ํ alias ๋ช ๋ น์ด๋ฅผ ์ด์ฉํด ์์ฑํ ๋จ์ถ์ด๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
(โป ์ด๋ฌํ ๋ฐฉ๋ฒ์ผ๋ก ์์ฑํ ๋จ์ถ์ด๋ PC ์ฌ์์ ์ ์ฌ๋ผ์ง๋๋ค.)
<๋จ์ถ์ด๋ฅผ ๋ง๋ค๊ณ alias๋ก ๋จ์ถ์ด ๋ชฉ๋ก์ ํ์ธํ๋ฉด ์์ฑ๋ ๋จ์ถ์ด ํ์ธ ๊ฐ๋ฅ>

4.4.3 ์๊ตฌ์ ์ธ ๋จ์ถ์ด ๋ง๋ค๊ธฐ
์์ ๋ฐฉ๋ฒ์ผ๋ก ์์ฑ๋ ๋จ์ถ์ด๋ PC๋ฅผ ์ฌ์์ํ๋ฉด ์ฌ๋ผ์ง๊ธฐ ๋๋ฌธ์ ์๊ตฌ์ ์ธ ๋จ์ถ์ด๋ฅผ ์์ฑํ๋ ค๋ฉด ์๋์ ๊ฐ์ ๋ฐฉ๋ฒ์ ์ฌ์ฉํด์ผ ํฉ๋๋ค.
a. ํฐ๋ฏธ๋์ ls -al ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅ ํ ๋๋ ํ ๋ฆฌ์ ์๋ ๋ด์ฉ ๋ฆฌ์คํธ ์ค .zshrc ํ์ผ์ ์ด์ด์ค๋๋ค. (.zshrc ํ์ผ์ ์ฌ๋ ๋ช ๋ น์ด : vi .zshrc )

b. vi .zshrc๋ฅผ ํฐ๋ฏธ๋์ ์ ๋ ฅํ๋ฉด ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ณด์ฌ์ง๊ณ ๋จ์ถ์ด ์์ฑ์ด ๊ฐ๋ฅํฉ๋๋ค.
๋จ์ถ์ด ์์ฑ ๋ฐฉ๋ฒ :
i, a, o ์ค ํ๋๋ฅผ ๋๋ฅด๋ฉด ํธ์ง๋ชจ๋๋ก ์ ํ๋ฉ๋๋ค.
ํธ์ง๋ชจ๋๋ก ์ ํ๋๋ฉด ๋งจ ์๋ซ์ค์ ์ํ๋ ๋จ์ถ์ด๋ฅผ alias ๋จ์ถ์ด="์คํํ ๋ช ๋ น์ด" ํํ๋ก ์์ฑํฉ๋๋ค.
์์ฑ์ด ์๋ฃ๋๋ฉด esc ํค๋ฅผ ๋๋ฅด๊ณ :wq! ๋ฅผ ์ ๋ ฅํ๊ณ ์ํฐ๋ฅผ ๋๋ฅด๋ฉด ์ ์ฅ์ด ์๋ฃ๋ฉ๋๋ค.

์์ฑํ ๋จ์ถ์ด๋ฅผ ์ ๋ ฅํ๋ฉด ์ ์์ ์ผ๋ก ๋จ์ถ์ด๊ฐ ๋ฑ๋ก๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.

4.4.4 ๋จ์ถ์ด ์ญ์
์์ฑํ ๋จ์ถ์ด๋ unlias ์ญ์ ํ ๋จ์ถ์ด ์ ํํ๋ก ํฐ๋ฏธ๋์ ์ ๋ ฅํ๋ฉด ์ญ์ ๊ฐ ๊ฐ๋ฅํฉ๋๋ค.

Last updated