alias ๋ช ๋ น์ด๋ ๋ฆฌ๋ ์ค์์ ์์ฃผ ์ฐ๋ ๋ช ๋ น์ด๋ฅผ ๋จ์ถํ๊ฑฐ๋ ์๋ ์ต์ ์ ๋ถ์ฌ ์คํํ๋ ํต์ฌ ๊ธฐ๋ฅ์ ๋๋ค. alias ์์ฑ·์ญ์ ·์๋์ค์ ๋ฐฉ๋ฒ๋ถํฐ PATH·type๊ณผ์ ๊ด๊ณ๊น์ง ์๋ฒฝํ ์ ๋ฆฌํ์ต๋๋ค.
1. alias ๋ช ๋ น์ด, ๋ฆฌ๋ ์ค ๋ช ๋ น์ด ์๋ํ์ ์์

๊ฐ๋ฐ์๊ฐ ๋ฆฌ๋
์ค ์์์ ์๊ฐ์ ๊ฐ์ฅ ๋ง์ด ์ฐ๋ ๋ถ๋ถ์ “๋ฐ๋ณต๋๋ ๋ช
๋ น ์
๋ ฅ”์
๋๋ค.
alias(์์ผ๋ฆฌ์ด์ค)๋ ์ด ๋ฐ๋ณต์ ์ค์ด๊ณ , ๋ช
๋ น ์คํ ๋ฐฉ์๊น์ง ์ํ๋ ๋๋ก ๋ฐ๊ฟ์ฃผ๋ ๊ฐ๋ ฅํ ๋๊ตฌ์
๋๋ค.
ํนํ CLI๋ก ๋งค์ผ ์์ ํ๋ ๊ฐ๋ฐ์์๊ฒ alias๋ ์์ฐ์ฑ·์์ ์ฑ·์ค์ ๋ฐฉ์ง๋ฅผ ๋์์ ์ก์์ฃผ๋ ํต์ฌ ๊ธฐ๋ฅ์ ๋๋ค.
์๋ฅผ ๋ค์ด ์๋ ๋ช ๋ น์ ๋งค๋ฒ ์ ๋ ฅํด์ผ ํ๋ค๊ณ ์๊ฐํด๋ณด์:
grep --color=auto -nR
์ด๊ฑธ alias๋ก ๋จ ํ ์ค๋ก ๋ง๋ค ์ ์๋ค:
alias grep='grep --color=auto'
์ด์ grep์ ์ ๋ ฅํ๋ ์๊ฐ ์์ ์ต์ ์ด ํญ์ ์ ์ฉ๋๋ค.
๋๋ ์ค์ ๋ฐฉ์ง:
alias rm='rm -i'
→ ์ญ์ ํ๊ธฐ ์ ์ ํญ์ ๋ฌผ์ด๋ณด๋๋ก ์๋ ๋ณดํธ.
๋๋ ๋ค ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ง๊ฒ ๋จ์ถ:
alias ll='ls -alF'
alias g='git status'
์ด์ฒ๋ผ alias๋ ๋จ์ํ ํธ์ ๊ธฐ๋ฅ์ด ์๋๋ผ ๊ฐ๋ฐ์์ ์์ ์๋์ ์์ ์ฑ์ ์์ ํ ๋ฐ๊ฟ์ฃผ๋ ๊ฐ๋ ฅํ ์๋ํ ๋๊ตฌ๋ค.
๊ฒ๋ค๊ฐ type ๊ธ์์ ์ค๋ช
ํ๋ฏ์ด,
alias๋ ๋ช
๋ น ์คํ์ ์ฒซ ๋ฒ์งธ ๋จ๊ณ์ด๊ธฐ ๋๋ฌธ์:
๋ช ๋ น์ด์ ์ค์ ์คํ ๊ฒฐ๊ณผ๋ alias์ ์ํด ์์ ํ ๋ฐ๋ ์ ์๋ค.
๋ฐ๋ผ์ alias๋ ๋ฆฌ๋
์ค ๋ช
๋ น ์คํ ์ฒด๊ณ์ ํต์ฌ ์์์ด๋ฉฐ
which·whereis·type·PATH ๊ธ๊ณผ ์์ฐ์ค๋ฝ๊ฒ ์ด์ด์ง๋ ๊ฐ๋
์ด๋ค.
2. alias ๊ธฐ๋ณธ ๊ฐ๋
โ alias๋?
๋ช ๋ น์ด๋ฅผ ์๋ก์ด ์ด๋ฆ์ผ๋ก ๋ฐ๊พธ๊ฑฐ๋, ๊ธฐ๋ณธ ์ต์ ์ ์๋์ผ๋ก ์ถ๊ฐํ์ฌ ์คํํ๋๋ก ๋ง๋๋ ์ ธ ๊ธฐ๋ฅ.
์์:
alias ll='ls -alF'
์ด์ ll๋ง ์ ๋ ฅํ๋ฉด ls -alF๊ฐ ์คํ๋๋ค.
3. alias๊ฐ ์ค์ํ ์ด์
๋ฆฌ๋ ์ค์์ ๋ช ๋ น์ ์คํํ ๋ ์์ ์๋ ์์๋๋ก ๋์์ ์ฐพ์ต๋๋ค:
- alias
- shell builtin
- function
- PATH์์ ํ์ผ ๊ฒ์
์ฆ,
alias๊ฐ ์กด์ฌํ๋ฉด alias๊ฐ ๋ฌด์กฐ๊ฑด ๊ฐ์ฅ ๋จผ์ ์คํ๋๋ค.
์ด ๋๋ฌธ์ which·whereis๋ง์ผ๋ก๋ ์ ์ฒด ์คํ ๊ตฌ์กฐ๋ฅผ ์ ์ ์๊ณ
type์ด ํ์ํ ์ด์ ๊ฐ ๋ฐ๋ก alias ๋๋ฌธ์ด๋ค.
์:
type ls
ls is aliased to `ls --color=auto'
์ด๋ ๊ฒ ๋๋ฉด ls๋ฅผ ์ ๋ ฅํ ๋๋ง๋ค ์์ ์ต์ ์ด ๋ถ๋๋ค.

5. type์ ์ด์ฉํ alias ํ์ธ๋ฒ

type ls
์ถ๋ ฅ:
ls is aliased to `ls --color=auto'
which๋ alias๋ฅผ ์ ์ ์๋ค:
which ls
/usr/bin/ls
์ฆ:
- type = ์คํ ํ๋ฆ ์ ์ฒด ํ์ ( alias, builtin, function ํฌํจ )
- which = ํ์ผ ์์น๋ง
6. alias์ ๋ํ์ ์ธ ์ฌ์ฉ ์์ ๋ชจ์

1) ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ls ๋จ์ถ
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'
๋๋ถ๋ถ์ Linux ์ฌ์ฉ์๋ค์ด ํ์๋ก ๋ฃ๋ ์ค์ ์ด๋ค.
2) rm ์ค์ ๋ฐฉ์ง๋ฅผ ์ํ ๋ณดํธ ์ฅ์น
alias rm='rm -i'
rm ๋ช ๋ น ์ ๋ ฅ ์ ํ์ผ ์ญ์ ์ ์ ๋ฌด์กฐ๊ฑด yes/no ์ง๋ฌธ ํ์.
3) grep ๊ฒฐ๊ณผ๋ฅผ ํญ์ ์์ ํ์
alias grep='grep --color=auto'
์์์ผ๋ก ๊ฐ๋ ์ฑ์ด ๋งค์ฐ ์ข์์ง.
4) cd๋ฅผ ์ฌ์ฉํ ๋น ๋ฅธ ๋๋ ํฐ๋ฆฌ ์ด๋
alias ..='cd ..'
alias ...='cd ../..'
5) git ๋จ์ถ ๋ช ๋ น์ด
alias g='git status'
alias ga='git add'
alias gc='git commit'
alias gp='git push'
๊ฐ๋ฐ ํจ์จ์ ํฌ๊ฒ ์ฌ๋ ค์ฃผ๋ ์ค์ .
6) make ๋ก๊ทธ ์๋ ์ ์ฅ
alias makelog='make 2>&1 | tee make.log'
์๋ฒ ๋๋ ๋น๋ ํ๊ฒฝ์์ ๋งค์ฐ ์ ์ฉ.
7. alias๋ฅผ ์๊ตฌ์ ์ผ๋ก ์ค์ ํ๋ ๋ฐฉ๋ฒ
ํฐ๋ฏธ๋์์ ๋ง๋ alias๋ ์ผ์์ ์ ๋๋ค. ์๊ตฌ ์ ์ฉํ๋ ค๋ฉด ํ๋กํ ํ์ผ์ ์ถ๊ฐํด์ผ ํฉ๋๋ค.
| ํ๊ฒฝ | ์ค์ ํ์ผ | ํน์ง |
| bash | ~/.bashrc | ๊ฐ์ฅ ์ผ๋ฐ์ |
| zsh | ~/.zshrc | macOS ๊ธฐ๋ณธ |
| ๋ก๊ทธ์ธ ์ ธ | ~/.bash_profile / ~/.profile | ์ผ๋ถ ํ๊ฒฝ์์ ์ฌ์ฉ |
์์:
nano ~/.bashrc
alias ll='ls -alF'
alias grep='grep --color=auto'
source ~/.bashrc
8. alias๊ฐ PATH๋ณด๋ค ์ฐ์ ํ๋ ์ด์

๋ช ๋ น ์คํ ์์๋:
- alias
- builtin
- function
- ํ์ผ(PAH)
๋ฐ๋ผ์ PATH๋ฅผ ์๋ฌด๋ฆฌ ์์ ํด๋
alias๊ฐ ์กด์ฌํ๋ฉด alias๊ฐ ์ฐ์ ํ๋ค.
์:
alias ls='ls --color=auto'
export PATH=/custom/bin:$PATH
์ด๋ด ๊ฒฝ์ฐ PATH์ ์๊ด์์ด alias๊ฐ ๋จผ์ ์คํ๋๋ค.
๊ทธ๋์ PATH ๊ด๋ จ ๋ฌธ์ ๋ฅผ ๋ถ์ํ ๋ ๋ฐ๋์ type์ ๋จผ์ ์คํํด์ผ ํ๋ค.
9. alias ๋ฌด์ํ๊ณ ์๋ ๋ช ๋ น์ด๋ฅผ ์คํํ๋ ๋ฐฉ๋ฒ
๋๋๋ก alias ์์ด ์คํํด์ผ ํ ๋๊ฐ ์์ต๋๋ค.
| ๋ฐฉ๋ฒ | ์ | ์ค๋ช |
| ์ญ์ฌ๋์ | \ls | alias ๋ฌด์ํ๊ณ ์ค์ ls ์คํ |
| ์ ๋ ๊ฒฝ๋ก | /bin/ls | alias ์ฐํ |
| type -f | type -f ls | ํ์ผ๋ง ํ์ธ |
10. alias ์ถฉ๋ ๋ฌธ์ ํด๊ฒฐ
1) script์์ alias๊ฐ ์ค๋์
์ ์คํฌ๋ฆฝํธ๋ ๊ธฐ๋ณธ์ ์ผ๋ก alias ํ์ฅ์ด ๊บผ์ ธ ์์ต๋๋ค.
์คํ ํ๊ฒฝ์ ์์ ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํ ์ค๊ณ์
๋๋ค.
shopt -s expand_aliases
๊ทธ ํ:
alias ll='ls -al'
์ด์ ์คํฌ๋ฆฝํธ์์๋ alias๊ฐ ๋์.
2) root์ ์ผ๋ฐ ์ฌ์ฉ์ PATH/alias ๋ค๋ฆ
์:
alias ll='ls -alF'
ํ์ง๋ง root์๋ ์์.
ํด๊ฒฐ:
sudo nano /root/.bashrc
3) sudo์์ alias๊ฐ ๋์ํ์ง ์์
sudo๋ alias๋ฅผ ํ์ฅํ์ง ์์ต๋๋ค.
์ด๋ด ๋๋:
sudo bash -c "ll"
๋๋ ์ ๋ ๊ฒฝ๋ก ์ฌ์ฉ.
11. OpenWrt·์๋ฒ ๋๋ ํ๊ฒฝ์์ alias
OpenWrt๋ BusyBox ๊ธฐ๋ฐ์ด๋ผ ๊ธฐ๋ณธ alias๊ฐ ๋งค์ฐ ๋จ์ํ๋ค.
ํ์ธ:
alias
๊ฑฐ์ ์์.
์ง์ ์ถ๊ฐ ๊ฐ๋ฅ:
echo "alias ll='ls -al'" >> /etc/profile
source /etc/profile
์ฃผ์: BusyBox์ GNU ls๋ ์ต์
์ด ๋ค๋ฅผ ์ ์์ด
๋์ผ alias๋ผ๋ ๋์ผํ๊ฒ ๋์ํ์ง ์์ ์ ์์ต๋๋ค.
12. alias + type + PATH ์กฐํฉ์ผ๋ก ๋๋ฒ๊น ํ๊ธฐ
CLI์์ “์ ์ด ๋ช ๋ น์ด ์ด๋ ๊ฒ ๋์ํ์ง?”๋ผ๋ ๋ฌธ์ ๋ ๋๋ถ๋ถ ์๋ 3๋จ๊ณ๋ก ํด๊ฒฐ๋ฉ๋๋ค.

์ง๋จ ์์:
- alias ํ์ธ
type ls
- PATH ํ์ธ
echo $PATH
- ์๋ณธ ํ์ผ ํ์ธ
ls -l /bin/ls
- alias ์ ๊ฑฐ
unalias ls
์ด๋ ๊ฒ ํ๋ฉด ๋๋ถ๋ถ์ CLI ๋ฌธ์ ๋ ํด๊ฒฐ๋๋ค.
13. FAQ : alias ๊ด๋ จ ์์ฃผ ๋ฌป๋ ์ง๋ฌธ
Q1. alias๋ whereis ๋๋ which๋ก ์ฐพ์ ์ ์๋์?
์๋๋ค. ๋ฐ๋์ type ์ฌ์ฉ.
Q2. alias๋ ์์คํ ์ ์ฒด์ ์ ์ฉ๋๋์?
์ฌ์ฉ์ ๊ณ์ ๋ณ๋ก ๋ฌ๋ผ์ง.
root/.bashrc ๋ฐ๋ก ์์.
Q3. ์คํฌ๋ฆฝํธ์์ alias๊ฐ ์ ์ฉ๋์ง ์๋ ์ด์ ๋?
๊ธฐ๋ณธ์ ์ผ๋ก alias ํ์ฅ์ด ๊บผ์ ธ ์์.
shopt -s expand_aliases ํ์.
Q4. alias ์ด๋ฆ์ ์๋ฌด๊ฑฐ๋ ๊ฐ๋ฅํ๊ฐ์?
๊ฐ๋ฅํ์ง๋ง ์ด๋ฏธ ์กด์ฌํ๋ ๋ช ๋ น์ด์ ์ถฉ๋์ํค๋ฉด ํท๊ฐ๋ฆด ์ ์์.
Q5. alias์ ๊ณต๋ฐฑ์ด ๋ค์ด๊ฐ๋ ๋๋์?
๋ฐ์ดํ๋ก ๊ฐ์ธ๋ฉด OK.
Q6. alias์์ ํ๊ฒฝ๋ณ์ ์ฌ์ฉํ ์ ์๋์?
๊ฐ๋ฅํจ.
Q7. alias์ function์ ์ด๋ค ์ฐจ์ด์ธ๊ฐ์?
alias๋ ๋จ์ ์นํ, function์ ๋ก์ง์ด ๊ฐ๋ฅ.
Q8. alias๋ฅผ ์๊ตฌ์ ์ผ๋ก ์ ์ฉํ๋ ค๋ฉด?
~/.bashrc ๋๋ ~/.zshrc์ ์ถ๊ฐ.
Q9. alias๊ฐ PATH๋ณด๋ค ์ฐ์ ์ธ๊ฐ์?
ํญ์ alias๊ฐ ์ฐ์ .
Q10. alias๋ ์ด๋ป๊ฒ ๋๋ฒ๊น ํ๋์?
type, unalias, \๋ช ๋ น์ด๋ฅผ ์ฌ์ฉ.
14. alias๋ ๋ฆฌ๋ ์ค์ ์์ฐ์ฑ์ ๊ทน๋ํํ๋ ํต์ฌ ๋๊ตฌ
alias๋ ๋จ์ํ “๋จ์ถ๋ช
๋ น”์ ๋์ด์ ๋ช
๋ น ์คํ ํ๋ฆ์ ์ฌ์ ์ํ๋ ๋๊ตฌ์
๋๋ค.
CLI๋ฅผ ์ ๊ทน์ ์ผ๋ก ํ์ฉํ๋ ๊ฐ๋ฐ์๋ผ๋ฉด alias ์ค์ ๋ง์ผ๋ก๋ ํ๋ฃจ ์์ญ ๋ฒ์ ๋ฐ๋ณต ์์
์ ์ค์ผ ์ ์๊ณ , ์ค์ ๊ฐ๋ฅ์ฑ๋ ํฌ๊ฒ ๋ฎ์ถ ์ ์์ต๋๋ค.
ํนํ rm, grep, git์ฒ๋ผ ์์ฃผ ์ฐ๋ ๋ช
๋ น์ alias๋ก ์ฌ์ ์ํ๋ฉด
์์
์๋·์ ํ๋·์์ ์ฑ์ด ๋ชจ๋ ํฅ์๋ฉ๋๋ค.
“alias๋ ๋น์ ์ ๋ฆฌ๋ ์ค ์ฌ์ฉ ๊ฒฝํ์ ๋ค์ ๋จ๊ณ๋ก ๋์ด์ฌ๋ฆฌ๋ ๋จ์ถํค๋ค.”
์ด์ ๊ธ ๋ณด๊ธฐ
[Linux] PATH ๊ตฌ์กฐ์ ์ฐ์ ์์ ์ค๋ช — ์คํ ํ์ผ์ด ์ ํ๋๋ ๊ธฐ์ค ์ดํดํ๊ธฐ โจ