- ์ ๋์ค ๊ณ์ด์ ์์คํ ์์ ์ฌ์ฉํ๋ ๋ํํ ์ธํฐํ์ด์ค์ด๋ค. ์ฌ์ฉ์์ ์ปค๋ ์ฌ์ด์์ ์ฌ์ฉ์์ ์ ๋ ฅ์ ๋ฐ์์ ๋ช ๋ น์ ํด์ํ์ฌ ์ปค๋์ ์ ๋ฌํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ฌ์ฉ์์๊ฒ ๋ฐํํ๋ค.
- ์์ ๊ทธ ์ข ๋ฅ๊ฐ ๋ค์ํ๋ฐ, Bash(๋ฐฐ์ฌ), Tcsh(C์), Ksh(์ฝ์), Zsh(Z์), Fish(Friendly Interactive SHell) ๋ฑ์ด ์๋ค.
- ์ ์คํฌ๋ฆฝํธ๋ Unix ์ปค๋งจ๋ ๋ฑ์ ๋์ดํด์ ์คํํ๋ ๊ฒ์ด๋ค.
- ์ ์คํฌ๋ฆฝํธ ์์ฒด ๋ฌธ๋ฒ์ด ์กด์ฌํ์ง๋ง, ๋ณดํต ์ด์์ฒด์ ์ ๋ช ๋ น์ด์ ํจ๊ป ์ฌ์ฉ๋๋ค.
- ์ ์คํฌ๋ฆฝํธ์ ํ์ฅ์๋
.sh์ด๋ค.
#!/bin/sh
echo "Hello World"- ์ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ ๋ ๋งจ ์์
#!/bin/sh๋ฅผ ์จ์ค์ผ ํ๋ค. ์์คํ ์ ์ง๊ธ๋ถํฐ ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ๋ค๊ณ ์๋ ค์ฃผ๊ธฐ ์ํ ๋ ์์ด๋ค.
- ๊ธฐ๋ณธ์ ์ผ๋ก ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํ ๋ ๊ถํ ๋ถ์ฌ๋ฅผ ํด์ฃผ์ง ์์ผ๋ฉด ์๋์ ๊ฐ์ด
Permission denied๊ฐ ๋ฐ์ํ๋ค.
- ๋ฆฌ๋
์ค๊ฐ ์์ ๊ฐ์ด ์คํ์ ๊ฑฐ๋ถํ๋ ์ด์ ๋
hello.sh์ ๊ถํ์ด ์๊ธฐ ๋๋ฌธ์ธ๋ฐ, ๋ช ๋ น์ด๋ฅผ ํตํด ํด๋น ์ ์คํฌ๋ฆฝํธ ํ์ผ์ ๊ถํ์ ๋ถ์ฌํด์ค ์ ์๋ค. ls -al๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๋ฉด ๊ถํ์ ํ์ธํ ์ ์๋ค.
- ์คํ ๊ถํ์ด ์๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
r: ์ฝ๊ธฐ ๊ถํ(read)w: ์ฐ๊ธฐ ๊ถํ(write)x: ์คํ ๊ถํ(execute)
chmod๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๋ฉด ์คํ๊ถํ์ ๋ถ์ฌํ ์ ์๋ค.
$ chmod +x hello.sh- ๊ทธ๋ฐ๋ฐ ์คํ๊ถํ์ ๊ฐ ์ฌ์ฉ์์ ๋ง๊ฒ ์ฃผ๊ณ ์ถ๋ค๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น? ๋ฆฌ๋ ์ค์์๋ ์ซ์๋ฅผ ํตํด ๊ถํ์ ๋ถ์ฌํ ์ ์๋ค.
| ์ฌ์ฉ์ | ๊ทธ๋ฃน | ์ ์ฒด |
|---|---|---|
| r=400 | r=40 | r=4 |
| w=200 | w=20 | w=2 |
| x=100 | x=10 | x=1 |
- ๋ง์ฝ ์๋์ ๊ฐ์ด ๋ถ์ฌํ๋ค๋ฉด
- ์ฌ์ฉ์์๊ฒ๋ rwx ๋ชจ๋ ๋ถ์ฌ
- ๊ทธ๋ฃน์๋ rx๋ง ๋ถ์ฌ
- ์ ์ฒด์๋ wx๋ง ๋ถ์ฌ
$ chmod 753 hello.sh


