| fd (file descriptor) | fd ์ด๋ฆ | ์ฉ๋ | ํ์ค ์ฅ์น |
|---|---|---|---|
| 0 | stdin (ํ์ค ์ ๋ ฅ) | ๋ช ๋ น์ด์ ์ ๋ ฅํ ๋ด์ฉ์ ์ ์ฅ | ํค๋ณด๋ |
| 1 | stdout (ํ์ค ์ถ๋ ฅ) | ๋ช ๋ น์ด์์ ์ถ๋ ฅํ ๋ด์ฉ์ ์ ์ฅ | ํ๋ฉด |
| 2 | stderr (ํ์ค ์ค๋ฅ) | ๋ช ๋ น์ด์์ ์ถ๋ ฅํ ์ค๋ฅ ๋ฉ์์ง๋ฅผ ์ ์ฅ | ํ๋ฉด |
-
ํญ์ ๋ช ๋ น์ด๋ ์ข์ธก, ํ์ผ์ ์ฐ์ธก์ ์จ๋ค๋ ๊ฒ์ ๋ช ์ฌํ์.
-
fd 0๊ณผ 1์ ์๋ต์ด ๊ฐ๋ฅํ๋ค.
- ํ์ค ์ค๋ฅ(2)๋ ๋ฐ๋์ ํ๊ธฐํด์ผ ํจ
-
์์ : ํ์ค ์ ๋ ฅ ๋ฆฌ๋๋ ์
๋ช ๋ น์ด < ํ์ผ๋ช ๋ น์ด 0< ํ์ผ
$ cat sample.txt # sample.txt ํ์ผ์ ๋ด์ฉ์ ๋ณด์ฌ์ค
$ tr '[A-Z]' '[a-z]' < sample.txt # sample.txt ํ์ผ์ ๋๋ฌธ์๋ฅผ ์๋ฌธ์๋ก ๋ฐ๊พธ๊ณ ๋ด์ฉ์ ๋ณด์ฌ์ค
- ์์ : ํ์ค ์ถ๋ ฅ ๋ฆฌ๋๋ ์
๋ช ๋ น์ด >> ํ์ผ('>'๋ ๋ฎ์ด์ฐ๊ธฐ, '>>'๋ ์ด์ด์ฐ๊ธฐ)๋ช ๋ น์ด 1>> ํ์ผ
$ date >> day-time # date ๋ช
๋ น์ด์ ๊ฒฐ๊ณผ๋ฅผ day-time ํ์ผ๋ก ๊ธฐ๋ก
$ cat day_time # day_time ํ์ผ ๋ณด๊ธฐ
- ์์ : ํ์ค ์ค๋ฅ ๋ฆฌ๋๋ ์
๋ช ๋ น > ํ์ผa 2> ํ์ผe(๋ช ๋ น์ด์ ๊ฒฐ๊ณผ๋ฅผ ํ์ผa์ ๊ธฐ๋กํ๊ณ , ์ค๋ฅ ๋ฉ์์ง๋ฅผ ํ์ผe์ ๊ธฐ๋กํจ)๋ช ๋ น 1> ํ์ผa 2> ํ์ผe๋ช ๋ น > ํ์ผ 2>&1(๋ช ๋ น์ด์ ๊ฒฐ๊ณผ์ ์ค๋ฅ ๋ฉ์์ง๋ฅผ ํ์ผ์ ๊ธฐ๋ก)๋ช ๋ น 1> ํ์ผ 2>&1
- ๋ฌธ๋ฒ:
๋ช ๋ น์ด1 | ๋ช ๋ น์ด2 | ๋ช ๋ น์ด3- ํ์ดํ๋ ์ฌ์ง์ (Redirection)๊ณผ ๋ฌ๋ฆฌ ํ์ผ ์ ์ถ๋ ฅ์ ํ์ง ์๊ณ ๋ฉ๋ชจ๋ฆฌ ์์์ ๋ช ๋ น์ด ์ฒ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ์ฆ์ ๋ค๋ฅธ ๋ช ๋ น์ด์ ์ ๋ ฅ์ผ๋ก ๋๊ธฐ๋ฏ๋ก ์๋๊ฐ ๋น ๋ฅด๋ค.
-
cd ๋ช ๋ น์ด: ํ์ฌ ๋๋ ํ ๋ฆฌ๋ฅผ ๋ณ๊ฒฝํจ (Change Directory)
-
cp ๋ช ๋ น์ด: ํน์ ํ์ผ์ ํ์ฌ ๋๋ ํ ๋ฆฌ ๋๋ ๋ค๋ฅธ ๋๋ ํ ๋ฆฌ๋ก ๋ณต์ฌํจ
-
ls ๋ช ๋ น์ด: ํ์ฌ ๋๋ ํ ๋ฆฌ ๋ด ์ ๋ณด๋ฅผ ํ์ํจ
-
lsof ๋ช ๋ น์ด: list open files ๋ช ๋ น์ด๋ ์์คํ ์์ ์ด๋ฆฐ ํ์ผ ๋ชฉ๋ก์ ์๋ ค์ฃผ๊ณ ์ฌ์ฉํ๋ ํ๋ก์ธ์ค, ๋๋ฐ์ด์ค ์ ๋ณด, ํ์ผ์ ์ข ๋ฅ ๋ฑ์ ํ์ํจ
-
mkdir ๋ช ๋ น์ด: ์๋ก์ด ๋๋ ํ ๋ฆฌ๋ฅผ ์์ฑํจ
-
mv ๋ช ๋ น์ด: ํน์ ํ์ผ์ ํ์ฌ ๋๋ ํ ๋ฆฌ ๋๋ ๋ค๋ฅธ ๋๋ ํ ๋ฆฌ๋ก ์ด๋์ํค๊ฑฐ๋ ์ด๋ฆ์ ๋ณ๊ฒฝํจ
-
pwd ๋ช ๋ น์ด: ํ์ฌ ์์ ์ค์ธ ๋๋ ํ ๋ฆฌ ์ด๋ฆ์ ์ถ๋ ฅํจ (Print Work Directory)
-
rm ๋ช ๋ น์ด: ํ์ผ์ด๋ ๋๋ ํ ๋ฆฌ๋ฅผ ์ญ์ ํจ
-
rmdir ๋ช ๋ น์ด: ๋น ๋๋ ํ ๋ฆฌ๋ฅผ ์ญ์ ํจ
-
env ๋ช ๋ น์ด: ํ๊ฒฝ ๋ณ์๋ฅผ ํ์ธํ ์ ์์
- PATH ๋ณ์์ ๊ฒฝ๋ก๋ฅผ ์ง์ ํ์ฌ ๊ฒฝ๋ก ์ด๋ ์์ด๋ ์คํ ํ์ผ์ ์คํํ ์ ์๊ฒ ํด์ค (์:
PATH=$PATH:$HOME/bin) - source ๋ช ๋ น์ด๋ก ์ ธ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ๋ฉด ํ๊ฒฝ ๋ณ์๋ฅผ ์ผ๊ด์ ์ผ๋ก ์ค์ ํ ์ ์์
- PATH ๋ณ์์ ๊ฒฝ๋ก๋ฅผ ์ง์ ํ์ฌ ๊ฒฝ๋ก ์ด๋ ์์ด๋ ์คํ ํ์ผ์ ์คํํ ์ ์๊ฒ ํด์ค (์:
-
export ๋ช ๋ น์ด: ํ๊ฒฝ ๋ณ์๋ฅผ ์ค์ ํจ
-
set ๋ช ๋ น์ด: ์ ธ ๋ณ์๋ฅผ ์ค์ ํจ
- ๋ง์ฝ ํ๊ฒฝ ๋ณ์์ ์ ธ ๋ณ์์ ์ด๋ฆ์ด ๋์ผํ๋ฉด, ํ์ชฝ์ด ๋ฐ๋ ๋ ๋ค๋ฅธ ํ์ชฝ๋ ๋ฐ์๋๋ค.
-
unset ๋ช ๋ น์ด: ํ๊ฒฝ ๋ณ์ ํน์ ์ ธ ๋ณ์๋ฅผ ํด์ ํจ
-
cat ๋ช ๋ น์ด: ํ์ผ์ ๋ด์ฉ์ ๋ณด์ฌ์ค (conCATenate)
-
cmp ๋ช ๋ น์ด: ํ์ผ์ ๋น๊ตํจ, diff์ ๋ฌ๋ฆฌ ์ฐจ์ด์ ์ ์ ๋ฌด๋ง ์๋ ค์ค (Compare)
-
diff ๋ช ๋ น์ด: ํ์ผ์ ๋น๊ตํจ, ์ฐจ์ด์ ์ ์์ธํ๊ฒ ํ์ํจ
-
find ๋ช ๋ น์ด: ์กฐ๊ฑด์ ๋ง๋ ํ์ผ์ ์ฐพ์
-
touch ๋ช ๋ น์ด: 0๋ฐ์ดํธ์ ๋น ํ์ผ์ ์์ฑํ๊ฑฐ๋, ๊ธฐ์กด ํ์ผ์ด ์์ ๊ฒฝ์ฐ ํ์ผ์ ์์ ์๊ฐ์ ํ์ฌ ์๊ฐ์ผ๋ก ๋ณ๊ฒฝํจ
-
ln ๋ช ๋ น์ด: ํ์ผ์ด๋ ๋๋ ํ ๋ฆฌ์ ๋ํ ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ์์ฑํจ
-
stat ๋ช ๋ น์ด: ํ์ผ์ ๊ฐฑ์ ์ผ์, ์ ์ ์ผ์๋ฅผ ์๋ ค์ค
-
tar ๋ช ๋ น์ด: ์ฌ๋ฌ ํ์ผ๋ค์ ํ๋์ ํ์ผ๋ก ๋ฌถ์
- ๋ฌถ๊ธฐ: tar -cvf [ํ์ผ๋ช .tar] [ํด๋๋ช ]
- ํ๊ธฐ: tar -xvf [ํ์ผ๋ช .tar]
- ์์ถ: tar -zcvf [ํ์ผ๋ช .tar.gz] [ํด๋๋ช ]
- ์์ถํด์ : tar -zxvf [ํ์ผ๋ช .tar.gz]
-
type ๋ช ๋ น์ด: ๋ช ๋ น์ด์ ์ข ๋ฅ๋ฅผ ์๋ ค์ค (alias, ์ธ๋ถ ๋ช ๋ น, ๋ด๋ถ ๋ช ๋ น์ธ์ง ์ฌ๋ถ)
-
which ๋ช ๋ น์ด: ๋ช ๋ น์ด๋ฅผ ๊ฒ์ํ๊ณ ๊ทธ๊ฒ์ ์ ๋๊ฒฝ๋ก๋ฅผ ์๋ ค์ค
-
whereis ๋ช ๋ น์ด: ๋ช ๋ น์ด๋ฅผ ๊ฒ์ํ์ฌ ๊ทธ๊ฒ์ ์ ๋๊ฒฝ๋ก๋ฅผ ์๋ ค์ฃผ๊ณ ๋งค๋ด์ผ, ์์ค์ฝ๋ ํ์ผ์ ๊ฒฝ๋ก๋ ๊ฐ์ด ํ์ํจ
-
df ๋ช ๋ น์ด: ํ์ผ ์์คํ ์ ๋์คํฌ ๊ณต๊ฐ์ ํ์ํจ
-
du ๋ช ๋ น์ด: ํ์ฌ ๋๋ ํ ๋ฆฌ์ ์ฌ์ฉ๋์ ํ์ํจ
-
free ๋ช ๋ น์ด: ์ด์์ฒด์ ์์ ์ฌ์ฉ/๋น์ฌ์ฉ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ณด์ฌ์ค
-
chgrp ๋ช ๋ น์ด: ์์ ๊ทธ๋ฃน์ ๋ณ๊ฒฝํจ (Change Group)
-
chmod ๋ช ๋ น์ด: ํ์ผ, ๋๋ ํ ๋ฆฌ, ์ฅ์น ๋ฑ์ ๊ถํ ๋ณ๊ฒฝ
- '- rwx rwx rwx': ํ์ผ ํ์ , ์์ ์ ํผ๋ฏธ์ , ์์ ์ ๊ทธ๋ฃน ํผ๋ฏธ์ , ๊ธฐํ ๋ชจ๋ ์ฌ์ฉ์์ ํผ๋ฏธ์ ์ ์๋ฏธํจ
- ํ์ : -(์ผ๋ฐํ์ผ), d(๋๋ ํ ๋ฆฌ), l(์ฌ๋ณผ๋ฆญ ๋งํฌ), c(์บ๋ฆญํฐํ ๋๋ฐ์ด์ค), b(๋ธ๋กํ ๋๋ฐ์ด์ค)
- 8์ง์๋ก ํผ๋ฏธ์ ์ง์ ๊ฐ๋ฅ: r(4), w(2), x(1) (์ฆ, 7์ rwx, 5๋ r-x๋ฅผ ์๋ฏธํจ)
- ๊ธฐํธ๋ฅผ ํตํด ํผ๋ฏธ์ ์ง์ ๊ฐ๋ฅ: [u(์์ ์), g(์์ ์ ๊ทธ๋ฃน), o(๊ธฐํ ์์ ์), a(ugo ์ ๋ถ)]
- ๊ทธ ์ธ์๋ ์คํ ๊ถํ ๊ด๋ จ๋ ๊ธฐ๋ฅ์ด ์์: SetUID(s), SetGID(s), StickyBit(t)
-
chown ๋ช ๋ น์ด: ํ์ผ ์์ ์๋ฅผ ๋ณ๊ฒฝํจ (root๋ง ์ฌ์ฉ ๊ฐ๋ฅ) (Change Owner)
-
groupadd ๋ช ๋ น์ด: ๊ทธ๋ฃน์ ์์ฑํจ
-
groupdel ๋ช ๋ น์ด: ๊ทธ๋ฃน์ ์ญ์ ํจ
-
groups ๋ช ๋ น์ด: ์์ ์ด ์์๋ ๊ทธ๋ฃน์ ๋ชฉ๋ก์ ํ์ํจ
-
id ๋ช ๋ น์ด: ์์ ์ ๊ธฐ๋ณธ ๊ทธ๋ฃน์ด๋ ๊ทธ ์ธ ์์๋์ด ์๋ ๊ทธ๋ฃน์ ์๋ ค์ค
-
newgrp ๋ช ๋ น์ด: ํ์ ๊ทธ๋ฃน์ ๊ธฐ๋ณธ ๊ทธ๋ฃน์ผ๋ก ๋ง๋ฆ
-
useradd ๋ช ๋ น์ด: ์ฌ์ฉ์ ๊ณ์ ์ ์์ฑํจ
-
userdel ๋ช ๋ น์ด: ์ฌ์ฉ์ ๊ณ์ ์ ์ญ์ ํจ
-
usermod ๋ช ๋ น์ด: ์ฌ์ฉ์๋ฅผ ๊ทธ๋ฃน์ ๋ฑ๋กํจ (User Modify)
-
passwd ๋ช ๋ น์ด: ๊ณ์ ์ ๋น๋ฐ๋ฒํธ๋ฅผ ๋ณ๊ฒฝํจ (Password)
-
su ๋ช ๋ น์ด: ๋ค๋ฅธ ์ฌ์ฉ์๋ก ์ ํํจ (Switch User)
-
w ๋ช ๋ น์ด: ์์คํ ์ ๋ก๊ทธ์ธํ ์ฌ์ฉ์์ ์ ๋ณด๋ฅผ ์ถ๋ ฅํจ
-
who ๋ช ๋ น์ด: ์ฌ์ฉ์๋ช ๊ณผ ๋ก๊ทธ์ธ ์ผ์๋ฅผ ํ์ํจ
-
jobs ๋ช ๋ น์ด: ํ์ฌ ๊ฐ๋ ์ค์ธ ์์ ์ ๋ฒํธ๋ฅผ ๋ถ์ฌ ๋ชฉ๋ก์ผ๋ก ํ์ํจ
-
kill ๋ช ๋ น์ด: ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ ๋ก ์ข ๋ฃํจ
-
pmap ๋ช ๋ น์ด: ์์คํ ์ ํ๋ก์ธ์ค ID๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฉ๋ชจ๋ฆฌ ๋งต ์ ๋ณด๋ฅผ ์ถ๋ ฅํจ
-
ps ๋ช ๋ น์ด: ํ์ฌ ์์คํ ์ ํ๋ก์ธ์ค ์ํ๋ฅผ ์ถ๋ ฅํจ (Process Status)
ps aux: ํ๋ก์ธ์ค ์ ์ฒด ์ ๋ณด๋ฅผ ๋ณผ ์ ์๋ค.top๋๋htop: ํ๋ก์ธ์ค ์ํ๋ฅผ ์ค์๊ฐ์ผ๋ก ํ์ธํ ์ ์๋ค.
-
ftp ๋ช ๋ น์ด: FTP(File Transfer Protocol) ์๋น์ค
-
ifconfig ๋ช ๋ น์ด: ์ด์์ฒด์ ์ ๋คํธ์ํฌ ์ธํฐํ์ด์ค์ ์ค์ ์ ํ์ธ ๋ฐ ๋ณ๊ฒฝํจ
-
netstat ๋ช ๋ น์ด: ํ์ฌ ์์คํ ์ ์ฐ๊ฒฐ๋์ด ์๋ ๋คํธ์ํฌ ์ฐ๊ฒฐ ์ํ ๋ฐ ํฌํธ ์ ๋ณด๋ฅผ ํ์ํจ
-
nslookup ๋ช ๋ น์ด: ์ง์ ํ ํธ์คํธ๋ช (DNS๋ช ๋๋ IP์ฃผ์)์ ๊ดํ ์ ๋ณด๋ฅผ DNS ์๋ฒ์์ ๊ฐ์ ธ์์ ๋ณด์ฌ์ค
-
ntpdate ๋ช ๋ น์ด: ์ง์ ๋ time ์๋ฒ๋ก๋ถํฐ ์๊ฐ ์ ๋ณด๋ฅผ ๋๊ธฐํ์ํด
-
ping ๋ช ๋ น์ด: ICMP ํ๋กํ ์ฝ์ ์ด์ฉํ์ฌ ๋คํธ์ํฌ์ ์ฐ๊ฒฐ๋ ํธ์คํธ์ ์ฐ๊ฒฐ ์ํ๋ฅผ ํ์ธํ๊ณ , ํธ์คํธ ๊ฐ์ ํจํท์ด ์๋ณต๋ ์๊ฐ์ ์ธก์ ํ์ฌ ํ์ํจ
-
route ๋ช ๋ น์ด: ๋คํธ์ํฌ ๋ผ์ฐํ ํ ์ด๋ธ์ ์ถ๋ ฅํ๊ฑฐ๋ ์ค์ ํจ
-
traceroute ๋ช ๋ น์ด: ๋คํธ์ํฌ ๊ฒฝ๋ก๋ฅผ ํ์ธํ๊ธฐ ์ํด ํจํท์ด ๊ฑฐ์ณ ๊ฐ๋ ๊ฒฝ๋ก๋ฅผ ์ถ์ ํ์ฌ, ๊ฒฝ๋ก ์ค์ ๋คํธ์ํฌ ๋ถํ๊ฐ ๋์ ๊ณณ์ ์ฐพ์ ๋ ํ์ฉ๋จ
-
col ๋ช ๋ น์ด: ํ ์คํธ ํ์ผ ๋ด ๊ฐํ(ํน์) ๋ฌธ์์ ๊ณต๋ฐฑ ๋ฑ์ ๋ณํํ๋ ํํฐ ์ญํ ์ ํจ
- ์: '\n\r' --> '\n', ' ' --> '\t' ๋ฑ
-
colcrt ๋ช ๋ น์ด: ๋ฐ์ค(_)์ ๊ฐ์ถ๊ฑฐ๋ ๋ณํํจ
-
grep ๋ช ๋ น์ด: ํ ์คํธ ํ์์ผ๋ก ๋ ํ์ผ์ ๋ด์ฉ์ด๋ ๋ช ๋ น์ด์ ์คํ ๊ฒฐ๊ณผ๋ฅผ ํน์ ๋ฌธ์๋ ๋จ์ด๋ก ๊ฒ์ํจ
- ๋จ๋ ์ผ๋ก ์ฌ์ฉํ๋ฉด ํ ์คํธ ํ์ผ ๋๋ ๊ฒฐ๊ณผ์ ํน์ ๋ฌธ์๋ ๋จ์ด๊ฐ ํฌํจ๋ ํ์ด ์ถ๋ ฅ๋จ
-
nl ๋ช ๋ น์ด: ํ ์คํธ ํํ์ ํ์ผ์ ์ฝ์ด ํ ๋ฒํธ๋ฅผ ๋ถ์ฌํจ
-
sort ๋ช ๋ น์ด: ํ ์คํธ ํ์ผ์ ํ ๋จ์๋ก ์ ๋ ฌํจ
-
tr ๋ช ๋ น์ด: ํน์ ๋ฌธ์๋ฅผ ๋ค๋ฅธ ๋ฌธ์๋ก ๋ณ๊ฒฝํจ
-
date ๋ช ๋ น์ด: ์์คํ ์ ๋ ์ง์ ์๊ฐ์ ์๋ ค์ฃผ๊ฑฐ๋ ์ค์ ํจ
-
time ๋ช ๋ น์ด: ํน์ ํ๋ก์ธ์ค๋ ๋ช ๋ น์ด์ ์ฌ์ฉ๋ ์์คํ ์์ ์ ๋ณด๋ฅผ ์ถ๋ ฅํจ
-
cut ๋ช ๋ น์ด: ํ ์คํธ ํ์ผ์ด๋ ํ์ดํ๋ ๊ฒฐ๊ณผ ์ค์ ์ง์ ๋ ๋ถ๋ถ๋ง ํ์ํจ (ํ ์คํธ ํ์ผ ์ถ๋ ฅ ํธ์ง)
-
echo ๋ช ๋ น์ด: ์ง์ ๋ ๋ฌธ์์ด์ ํ๋ฉด์ ์ถ๋ ฅํจ
-
logger ๋ช ๋ น์ด: ์ด์์ฒด์ ์ ์ฃผ์ ๋ก๊ทธ ์ ์ฅ ํ์ผ(/var/log/messages)์ ๋ฉ์์ง๋ฅผ ์ ์ฅํจ
-
pr ๋ช ๋ น์ด: ํ ์คํธ ํ์ผ์ ์ธ์๊ฐ ๊ฐ๋ฅํ ํ์ค ์ถ๋ ฅ ํ์์ผ๋ก ๋ณํํจ
-
script ๋ช ๋ น์ด: ํฐ๋ฏธ๋์์ ์ํํ๋ ์์ ํ ๋ชจ๋ ๋ด์ฉ์ ํ ์คํธ ํ์์ผ๋ก ์ ์ฅํจ
-
tail ๋ช ๋ น์ด: ํ ์คํธ ํ์ผ์ ๋ง์ง๋ง ํ์ ๋ด์ฉ๋ถํฐ ์ถ๋ ฅํจ
-
domainname ๋ช ๋ น์ด: ์ด์์ฒด์ ์ ์ค์ ๋ ๋๋ฉ์ธ ์ด๋ฆ ์ ๋ณด๋ฅผ ํ์ธํจ
-
uptime ๋ช ๋ น์ด: ํ๊ท ์์คํ ๋ถํ ์ ๋ณด๋ฅผ ์ถ๋ ฅํจ
-
vmstat ๋ช ๋ น์ด: ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ์ํ๋ฅผ ํ์ธํจ
- man ๋ช
๋ น์ด: ๋ช
๋ น์ด์ ๋ํ ๋งค๋ด์ผ์ ๋ณด์ฌ์ค
- ๋ช ๋ น์ด ์์ "--help" ์ต์ ์ ํตํด์๋ ๊ฐ๋ตํ๊ฒ ๋ณผ ์ ์๋ค.
-
halt ๋ช ๋ น์ด: ์์คํ ์ ์ข ๋ฃํจ (ํต์ง, ์๊ฐ ์ค์ ๊ถํ์ด ์์)
-
reboot ๋ช ๋ น์ด: ์์คํ ์ ๋ค์ ์์ํจ (ํต์ง, ์๊ฐ ์ค์ ๊ถํ์ด ์์)
-
shutdown ๋ช ๋ น์ด: ์์คํ ์ ์ข ๋ฃํ๊ฑฐ๋ ์ฌ์์ํจ
- '-h': ์ข ๋ฃ, '-r': ๋ฆฌ๋ถํธ
- 'now': ์ง๊ธ, '+5': 5๋ถ ํ
-
at ๋ช ๋ น์ด: ๋ช ๋ น์ด ๋๋ ์คํฌ๋ฆฝํธ ํ์ผ์ด ํน์ ์๊ฐ์ ์คํ๋๋๋ก ์์ฝ
- /etc/at.allow, /etc/at.deny ์ค์ ์ ๊ธฐ๋ฐ์ผ๋ก ์์ฝ ๋ช ๋ น์ด์ ๋ํ ๊ถํ ๋ถ์ฌ ๊ฐ๋ฅ
- atd ๋ฐ๋ชฌ์ ๊ตฌ๋ ์ค์ด์ด์ผ๋ง ์ฌ์ฉ ๊ฐ๋ฅ (/etc/init.d/atd)
-
sudo ๋ช ๋ น์ด: ๋ช ๋ น์ด๋ฅผ root ๊ถํ์ผ๋ก ์คํํจ
- grep์ฒ๋ผ ์ ๊ทํํ์์ ์ฌ์ฉํ๋ฉฐ, ํ์ดํ๋ฅผ ์ด์ฉํ์ฌ ์ฌ์ฉ์๊ฐ ํ์๋ก ํ๋ ๊ฒฐ๊ณผ๋ก ์ฌ์ฒ๋ฆฌํ ์ ์์
- sed๋ ํธ์งํ๊ณ ์๋ ํ์ผ์ ๋ฐ๊พธ์ง ์๋๋ค.
- sed์ ์ฐ์ฐ์๋ค์ ์ ๋ ฅ ๋ฐ์ ๋ชจ๋ ๋ผ์ธ์ ์ ์ฉ๋๋ค.
- ํ ์คํธ ํํ์ ๋ฐ์ดํฐ๋ฅผ ํ๊ณผ ์ด๋ก ๊ตฌ๋ถํ์ฌ ์ฒ๋ฆฌํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ ๋๊ตฌ
-
๋ช ๋ น ๋ชจ๋
- ๋ค๋ฅธ ๋ชจ๋๋ก ์ ํํ ์ ์๋ ๊ธฐ๋ณธ ์ํ
- ์คํ ์งํ, ๋๋ ๋ค๋ฅธ ๋ชจ๋์์ Esc ํค๋ฅผ ๋๋ฅด๋ฉด ๋จ
- h (์ผ์ชฝ 1์นธ ์ด๋), j (์๋๋ก 1์นธ ์ด๋), k (์๋ก 1์นธ ์ด๋), l (์ค๋ฅธ์ชฝ์ผ๋ก 1์นธ ์ด๋)
- '+ (๋ค์ ๋ผ์ธ์ ์ฒซ ๋ฌธ์๋ก ์ด๋), - (์ ๋ผ์ธ์ ์ฒซ ๋ฌธ์๋ก ์ด๋)
- ^ ๋๋ 0 (ํ์ฌ ๋ผ์ธ์์ ๋งจ ์์ ์ฒซ ๋ฌธ์๋ก ์ด๋), $ (ํ์ฌ ๋ผ์ธ์์ ๋งจ ๋ค์ ๋ง์ง๋ง ๋ฌธ์๋ก ์ด๋)
- G (์ ์ผ ๋ง์ง๋ง ๋ผ์ธ์ ๋งจ ์์ ์ฒซ ๋ฌธ์๋ก ์ด๋)
- r (์ปค์๊ฐ ์์นํ ๋ฌธ์๋ฅผ ๋ค๋ฅธ ๋ฌธ์๋ก ์์ )
- cw, [์ซ์]cw (์ปค์์ ์์น๋ถํฐ ํ์ฌ ๋จ์ด์ ๋๊น์ง ์์ )
- s, [์ซ์]s (์ปค์์ ์์น๋ถํฐ ์ง์ ๋ ๊ธ์ ์๊น์ง ๋ด์ฉ์ ๋์ฒดํจ)
- cc (์ปค์๊ฐ ์์นํ ํ์ ๋ด์ฉ์ ๋ชจ๋ ์์ )
- C (์ปค์์ ์์น๋ถํฐ ํ์ ๋๊น์ง ์์ )
- x, [์ซ์]x (์ปค์๊ฐ ์์นํ ๋ฌธ์ ๋ฐ ์ง์ ๋ ๊ธ์ ์๋งํผ ์ญ์ )
- dw, [์ซ์]dw (์ปค์ ์์น์ ๋จ์ด ๋ฐ ์ง์ ๋ ๋จ์ด ์๋งํผ ์ญ์ )
- dd, [์ซ์]dd (์ปค์๊ฐ ์์นํ ํ ๋ฐ ์ง์ ๋ ํ ์๋งํผ ์ญ์ )
- u (๋ฐฉ๊ธ ์ํํ ๋ช ๋ น ์ทจ์)
- yy, [์ซ์]yy (์ปค์๊ฐ ์์นํ ํ ๋ฐ ์ง์ ๋ ํ์ ์๋ฅผ ๋ณต์ฌ)
- p (์ปค์๊ฐ ์์นํ ํ์ ์๋์ชฝ์ ๋ถ์ฌ๋ฃ๊ธฐ)
- P (์ปค์๊ฐ ์์นํ ํ์ ์์ชฝ์ ๋ถ์ฌ๋ฃ๊ธฐ)
-
ex ๋ชจ๋
- ์ ์ฅ, ์ข ๋ฃ, ๊ฒ์, ์นํ ๋ฑ๊ณผ ๊ฐ์ ๋ช ๋ น์ ๋ด๋ฆฌ๊ธฐ ์ํ ์ํ
- :q (์ ์ฅํ์ง ์๊ณ ์ข ๋ฃ)
- :q! (์ ์ฅํ์ง ์๊ณ ๊ฐ์ ์ข ๋ฃ)
- :w (์ ์ฅ)
- :w ํ์ผ๋ช (๋ค๋ฅธ ์ด๋ฆ์ผ๋ก ์ ์ฅ)
- :wq (์ ์ฅํ๊ณ ์ข ๋ฃ)
- :set nu (ํ์ผ ๋ด์ฉ์ ๊ฐ ํ์ ํ ๋ฒํธ๋ฅผ ํ์ํจ)
- :set nonu (ํ ๋ฒํธ ๊ฐ์ถ๊ธฐ)
- :set list (๋์ ๋ณด์ด์ง ์๋ ํน์(๊ฐํ) ๋ฌธ์๋ฅผ ํ์ํจ)
- :set nolist (ํน์(๊ฐํ) ๋ฌธ์ ๊ฐ์ถ๊ธฐ)
- :set showmode (ํ์ฌ ๋ชจ๋ ํ์)
- :set noshowmode (ํ์ฌ ๋ชจ๋ ๊ฐ์ถ๊ธฐ)
- /ํค์๋ (ํ์ฌ ์ปค์๋ก๋ถํฐ ๋ค๋ก ๊ฒ์), n (๋ค๋ก ๊ณ์ ์ฐพ๊ธฐ)
- ?ํค์๋ (ํ์ฌ ์ปค์๋ก๋ถํฐ ์์ผ๋ก ๊ฒ์), N (์์ผ๋ก ๊ณ์ ์ฐพ๊ธฐ)
- :s/ํค์๋1/ํค์๋2/์ต์ (ํค์๋1์ ํค์๋2๋ก ์นํ)
- (์นํ) s ์์ %๋ ํ์ผ ์ ์ฒด์ด๊ณ m,n์ mํ๋ถํฐ nํ๊น์ง ์ ์ฉํ๋ค๋ ๋ป์ด๋ค.
- (์ต์ ) g๋ฅผ ๋ถ์ด๋ฉด ์ ์ญ ์นํ, ๋ถ์ด์ง ์์ผ๋ฉด 1๋ฒ์งธ๋ง ์นํ
- (์ต์ ) i๋ฅผ ๋ถ์ด๋ฉด ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์์
- (์ต์ ) c๋ฅผ ๋ถ์ด๋ฉด ์นํํ ๋ ๋ฌผ์ด๋ด
-
์ ๋ ฅ ๋ชจ๋
- ํธ์ง๊ธฐ์ ํ ์คํธ๋ฅผ ์ ๋ ฅํ ์ ์๋ ์ํ
- ๋ช ๋ น ๋ชจ๋์์ i, I, a, A, o, O๋ฅผ ๋๋ฅด๋ฉด ๋จ
- i๋ ์ปค์๊ฐ ์์นํ ์์๋ฆฌ๋ถํฐ ์ ๋ ฅํ ์ ์๋ค.
- I๋ ์ปค์๊ฐ ์๋ ํ์ ๋งจ ์๋ถํฐ ์ ๋ ฅํ ์ ์๋ค.
- a๋ ์ปค์๊ฐ ์์นํ ๋ท์๋ฆฌ๋ถํฐ ์ ๋ ฅํ ์ ์๋ค.
- A๋ ์ปค์๊ฐ ์๋ ํ์ ๋งจ ๋์์ ์ ๋ ฅํ ์ ์๋ค.
- o๋ ์ปค์๊ฐ ์์นํ ๋ค์ ํ์ผ๋ก ์ด๋ํ์ฌ ์ ๋ ฅ์ ์์ํ๋ค.
- O๋ ์ปค์๊ฐ ์์นํ ์ด์ ํ์ผ๋ก ์ด๋ํ์ฌ ์ ๋ ฅ์ ์์ํ๋ค.
-
๋น์ฃผ์ผ ๋ชจ๋
- ํธ์งํ์ง ์๊ณ ๋ฌธ์๋ฅผ ๋ณด๊ธฐ๋ง ํ ์ ์๋ ์ํ
- ๋ช ๋ น ๋ชจ๋์์ v๋ฅผ ๋๋ฅด๋ฉด ๋จ
- ๋ช ๋ น ๋ชจ๋์ ๋น์ทํ๋ ํธ์ง์ด ์๋จ
๊ทธ ์ธ์๋ ๋ง์ ๋ช ๋ น์ด ๋ฐ ๊ธฐ๋ฅ์ด ์์ผ๋ฏ๋ก ๋ ๋ง์ ์ ๋ณด๋ฅผ ์๋ ค๋ฉด ๊ฒ์์ ํด๋ณด์ญ์์ค.
-
์ ๋ช ๋ น์ด ๋ค์ ์คํฌ๋ฆฝํธ ํ์ผ์ ์ต์ ์ผ๋ก ์ ๊ณตํ์ฌ ์คํํจ:
sh ./script.sh- ๋ง์ฝ ์คํฌ๋ฆฝํธ ํ์ผ์๊ฒ ์คํ ๊ถํ์ ๋ถ์ฌํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์คํํ ์ ์์:
./script.sh
- ๋ง์ฝ ์คํฌ๋ฆฝํธ ํ์ผ์๊ฒ ์คํ ๊ถํ์ ๋ถ์ฌํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ์คํํ ์ ์์:
-
์ฒซ ๋ผ์ธ์ ๋ค์ ๋ด์ฉ์ ์ถ๊ฐ:
#!/bin/sh- ์์ฑ๋ ์คํฌ๋ฆฝํธ๊ฐ Bourne Shell์์ ์ปค๋์๊ฒ ์๋ ค์ค
-
๋ณ์๋ช ์์๋ $ ๊ธฐํธ๋ฅผ ๋ถ์
-
์ฃผ์ ์์๋ # ๊ธฐํธ๋ฅผ ๋ถ์
- ์ฃผ์์ฌํญ
- "๋ณ์๋ช =๊ฐ" ํํ๋ก ์์ฑํ๋ฉฐ, ์ซ์์ ๋ฌธ์์ด ์๋ฌด ํํ๊ฐ ๊ฐ๋ฅํจ
- "=" ๋ฌธ์ ์ข์ฐ์ ๊ณต๋ฐฑ์ด ์์ด์ผ ํจ
- ๋ณ์์ ๊ฐ์ ๊ณต๋ฐฑ์ด ์์ผ๋ฉด ""๋ก ๊ฐ์ธ์ผ ํจ
- ๋ณ์๋ช ์ ์๋ฌธ์๋ก ์์ํด์ผ ํ๋ฉฐ, ์๋ฌธ์์ ์ซ์์ ๋ฐ์ค๋ฌธ์๊ฐ ์ฌ์ฉ๋ ์ ์์
- ์ ์ญ ๋ณ์
- ํ์ฌ ์๋ฟ๋ง ์๋๋ผ ํด๋น ์์์ ํ์๋๋ ์์ ํ๋ก์ธ์ค์์๋ ์ฌ์ฉํ ์ ์์
- export ๋ช ๋ น์ด๋ก ๋ฑ๋กํ ์ ์์
- env ๋๋ printenv ๋ช ๋ น์ด๋ก ๋ฑ๋ก๋ ์ ์ญ ๋ณ์ ํ์ธ ๊ฐ๋ฅ
- ์ง์ญ ๋ณ์
- ํ์ฌ์ ์์์๋ง ์ฌ์ฉ ๊ฐ๋ฅํ ๋ณ์
- set ๋ช ๋ น์ด๋ก ๋ฑ๋ก๋ ์ง์ญ ๋ณ์ ํ์ธ ๊ฐ๋ฅ
- unset ๋ช ๋ น์ด๋ก ์์ฑ๋ ๋ณ์๋ฅผ ์ ๊ฑฐํ ์ ์์
-
์ฌ์ฉ์ ์ ๋ ฅ ๋ฐ๊ธฐ: read <๋ณ์๋ช >
- ํด๋น ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํ๊ณ ๊ฐ์ ์ ๋ ฅํ๋ฉด, ๋ณ์์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๊ฐ์ด ์ ์ฅ๋จ (Python์ input() ํจ์ ์ญํ )
-
์์น ์ฐ์ฐ: expr <์์>
- ์ฐ์ฐ์: +, -, *, /, %
- ์ฐ์ฐ์์ ์ซ์ ๋๋ ์ซ์ํ ๋ณ์ ์ฌ์ด์๋ ๋ฐ๋์ ๊ณต๋ฐฑ์ด ์์ด์ผ ํจ
- ๊ดํธ๋ฅผ ์ฌ์ฉํ ๋๋ * ๋ฐ / ์ฐ์ฐ ์์๋ \๋ฅผ ๋ฐ๋์ ์ฌ์ฉํด์ผ ํจ
$ CALC='expr 20 + 20'
$ CALC2='expr 205 + \( 3 \* 4 \)'
$ echo $CALC
40
$ echo $CALC2
217
- if๋ฌธ
- if์ ๊ฐ์๋งํผ fi๋ก ๋ฐ๋์ ์กฐ๊ฑด๋ฌธ์ ์ข ๊ฒฐ์์ผ์ผ ํจ
- ๋จ, elif๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ์๋ ์ข ๊ฒฐ์ ์ํ ๊ฐ์์ ๊ตฌ์ ๋ฐ์ง ์์
if ์กฐ๊ฑด๋ฌธ
then ๋ช
๋ น์ด
elif ์กฐ๊ฑด๋ฌธ
then ๋ช
๋ น์ด
else ๋ช
๋ น์ด
if
์กฐ๊ฑด๋ฌธ์ ์ฌ์ฉํ ์์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. (์ฝ๋์ ๊ฐ ๋ผ์ธ์ ;์ ์ด์ฉํ์ฌ ํฉ์น ์๋ ์์)
#!/bin/sh
echo -n "์ซ์ A๋ฅผ ์
๋ ฅํ์ธ์: "
read VAR1
echo -n "์ซ์ B๋ฅผ ์
๋ ฅํ์ธ์: "
read VAR2
if [ $VAR1 -eq $VAR2 ]
then echo " ์ซ์ A์ B๋ ๊ฐ์ต๋๋ค."
elif [ $VAR1 -ge $VAR2 ]
then echo " ์ซ์ A๋ B๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ต๋๋ค."
elif [ $VAR1 -le $VAR2 ]
then echo " ์ซ์ A๋ B๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ต๋๋ค."
fi
- test๋ฌธ
- '[' ๋ค์ ']' ์์๋ ๊ณต๋ฐฑ์ด ๋ฐ๋์ ์์ด์ผ ํจ
- ๋ฌธ์์ด ๋ณ์๋ฅผ ์ฌ์ฉํ ๋์๋ ""๋ก ๊ฐ์ธ์ผ ํจ
test ํํ์
[ ํํ์ ]
- ์์น ๋น๊ต (์์์ ์ดํ์ ์ซ์๋ ๋ฌด์ํจ)
| ํํ์ | true์ธ ๊ฒฝ์ฐ |
|---|---|
| [ $A -eq $B ] | A์ B์ ๊ฐ์ด ๊ฐ์ ๊ฒฝ์ฐ |
| [ $A -ne $B ] | A์ B์ ๊ฐ์ด ๋ค๋ฅผ ๊ฒฝ์ฐ |
| [ $A -gt $B ] | A๊ฐ B๋ณด๋ค ํฐ ๊ฒฝ์ฐ |
| [ $A -lt $B ] | A๊ฐ B๋ณด๋ค ์์ ๊ฒฝ์ฐ |
| [ $A -ge $B ] | A๊ฐ B๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ ๊ฒฝ์ฐ |
| [ $A -le $B ] | A๊ฐ B๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ๊ฒฝ์ฐ |
- ํ์ผ ๋น๊ต
| ํํ์ | true์ธ ๊ฒฝ์ฐ |
|---|---|
| [ -s ] | ํ์ผ์ด ์กด์ฌํ๋ฉด์ ํฌ๊ธฐ๊ฐ 0๋ณด๋ค ํฐ ๊ฒฝ์ฐ |
| [ -f ] | ๋๋ ํ ๋ฆฌ๋ฅผ ์ ์ธํ ํ์ผ์ผ ๊ฒฝ์ฐ |
| [ -d ] | ํ์ผ์ ์ ์ธํ ๋๋ ํ ๋ฆฌ์ผ ๊ฒฝ์ฐ |
| [ -w ] | ์ฐ๊ธฐ๊ฐ ๊ฐ๋ฅํ ๊ฒฝ์ฐ |
| [ -r ] | ์ฝ๊ธฐ๊ฐ ๊ฐ๋ฅํ ๊ฒฝ์ฐ |
| [ ! -์ต์ ] | ์ต์ ์ ์กฐ๊ฑด์ด ๊ฑฐ์ง์ด ๋๋ ๊ฒฝ์ฐ |
- ๋ฌธ์์ด ๋น๊ต
| ํํ์ | true์ธ ๊ฒฝ์ฐ |
|---|---|
| ["๋ฌธ์์ด1" = "๋ฌธ์์ด2" ] | ๋ ๋ฌธ์์ด์ด ๊ฐ์ ๊ฒฝ์ฐ |
| ["๋ฌธ์์ด1" != "๋ฌธ์์ด2" ] | ๋ ๋ฌธ์์ด์ด ๋ค๋ฅธ ๊ฒฝ์ฐ |
| [ -z "๋ฌธ์์ด ] | ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ 0์ธ ๊ฒฝ์ฐ |
| [ -n "๋ฌธ์์ด ] | ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ 0์ด ์๋ ๊ฒฝ์ฐ |
#!/bin/sh
# ๋ฌธ์์ด ๋น๊ต ์์ ์
๋๋ค.
# X$n ํ๋ผ๋ฏธํฐ์์ X๋ NULL์ด ์
๋ ฅ๋๋ ๊ฒ์ ๋ฐฉ์งํ๋ ์์ ์ฅ์น์
๋๋ค.
if [ X$1 = X$2 ]
then
echo "์
๋ ฅ๋ ๋ ์ธ์๋ ๊ฐ์ต๋๋ค."
elif [ X$1 != X$2 ]
then
echo "์
๋ ฅ๋ ๋ ์ธ์๋ ๋ค๋ฆ
๋๋ค."
fi
- Bourne Shell์ ํน์ ํ๋ผ๋ฏธํฐ: $1๋ 1๋ฒ์งธ ์ธ์, $2๋ 2๋ฒ์งธ ์ธ์๋ฅผ ์๋ฏธํ๋ค. ๋ค์ ํ๋ ํน์ ํ๋ผ๋ฏธํฐ๋ฅผ ์์ฝํ ๊ฒ์ด๋ค.
| ํน์ ํ๋ผ๋ฏธํฐ | ์ค๋ช |
|---|---|
| $* | ๋ชจ๋ ์ธ์ |
| $# | ์ธ์์ ๊ฐ์ |
| $? | ๊ฐ์ฅ ์ต๊ทผ์ ์คํํ ํฌ๊ทธ๋ผ์ด๋ ํ์ดํ๋ผ์ธ์ ์ข ๋ฃ ์ํ๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ์ํ ๊ฒฐ๊ณผ๊ฐ error์ด๋ฉด 1, ๋ฐ์ํ์ง ์์ผ๋ฉด 0์ด๋ค. |
| $$ | ํ์ฌ ์์ ํ๋ก์ธ์ค ID๋ฅผ ๊ฐ์ง๊ณ ์๋ค. |
| $! | ๊ฐ์ฅ ์ต๊ทผ์ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์คํ๋ ํ๋ก์ธ์ค์ ID๋ฅผ ๊ฐ์ง๊ณ ์๋ค. |
| $0 | ์ ๋๋ ์ ์คํฌ๋ฆฝํธ์ ์ด๋ฆ์ ๊ฐ์ง๊ณ ์๋ค. |
| $_ | ์์ด ์์๋๋ฉด์ ์ค์ ๋๋ฉฐ, ์คํ๋ ์ ์คํฌ๋ฆฝํธ์ ์ ๋ ๊ฒฝ๋ก๋ฅผ ํฌํจํ๋ค. |
- for๋ฌธ
- ์์ ๋ชฉ๋ก์ ์ ํํ ์๋งํผ์ ๋ช ๋ น์ ๋ฐ๋ณตํ๊ธฐ ์ํด ์ฌ์ฉ๋จ
- in ๋ค์ ์์๋ค์ for ๋ค์์ ๋์ค๋ ๋ณ์ ๊ฐ์ผ๋ก ํ๋์ฉ ๋์น์์ผ ๋ช ๋ น์ดA๋ฅผ ์ํํ๊ณ , in ๋ค์ ์์ ๊ฐ์๋งํผ ์คํํ๊ณ ๋์ done ๋ค์ ๋ช ๋ น์ดB๋ฅผ ๋ง์ง๋ง์ผ๋ก ๋ฐ๋ณต์ ์ข ๋ฃํ๋ค.
for ๋ณ์ in ์์1 ์์2 ์์3 ...
do
๋ช
๋ น์ดA
done
๋ช
๋ น์ดB
- while๋ฌธ
- ์กฐ๊ฑด์ด ๋ง์กฑํ๋ฉด do์ done ์ฌ์ด์ ๋ช ๋ น์ด๋ค์ ๋ฐ๋ณตํด ์คํํ๋ค.
- ์กฐ๊ฑด๋ฌธ์ด ํญ์ ์ฐธ์ด๊ฑฐ๋ 0๋ณด๋ค ํฌ๋ฉด ๋ฌดํ ๋ฐ๋ณต๋ฌธ์ด ๋๋ค๋ ๊ฒ์ ์ ์ํ๋ผ. (Ctrl+C๋ฅผ ๋๋ฅด๋ฉด ๋ฌดํ๋ฐ๋ณต์ ์ค๋จํจ)
while [ ์กฐ๊ฑด ]
do
๋ช
๋ น์ด
done
- until๋ฌธ
- while๋ฌธ๊ณผ ๋ฌ๋ฆฌ ๋ฐ๋๋ก ์กฐ๊ฑด๋ฌธ์ด ๊ฑฐ์ง์ด๋ฉด do์ done ์ฌ์ด์ ๋ช ๋ น์ด๋ฅผ ์คํํ๊ณ , ์ฐธ์ด๋ฉด ๋ฐ๋ณต์ ์ข ๋ฃํ๋ค.
until [ ์กฐ๊ฑด ]
do
๋ช
๋ น์ด
done
-
continue๋ฌธ๊ณผ break๋ฌธ
- continue๋ฌธ์ ๋ฐ๋ณต๋ฌธ ์ํ ์ค๊ฐ์์ continue ์ดํ์ ๋ด์ฉ๋ค์ ๋ฌด์ํ๊ณ ์กฐ๊ฑด ๊ฒ์ฌ๋ฅผ ๋ค์ ์งํํ๋ค.
- break๋ฌธ์ ๋ฐ๋ณต๋ฌธ์ ์ข ๋ฃํ๊ณ ๊ฐ์ ๋ก ๋น ์ ธ๋์ฌ ๋ ํ์ฉํ๋ค.
- ๋จ ์ค์ฒฉ๋ ๋ฐ๋ณต๋ฌธ์ ๊ฒฝ์ฐ,
continue n์ ์ด์ฉํด continue ๋ฒ์๋ฅผ ์ง์ ํ ์ ์์ (์ซ์ 1์ ์ธ์ ํ 1๋ฒ์งธ ๋ฐ๋ณต๋ฌธ, 2๋ ์ธ์ ํ 2๋ฒ์งธ ๋ฐ๋ณต๋ฌธ...)
-
case๋ฌธ
- ์ง์ ๋ ๋ณ์์ ๋ฐ๋ผ ์ฌ์ ๋ณ์์ ์ง์ ๋ ์์ ์ ์ํํ ๋ ํ์ฉ๋๋ฉฐ, ๋ณดํต ์ ํ๋ก๊ทธ๋๋ฐ ์ ๋ฉ๋ด๋ฅผ ๊ตฌ์ฑํ ๋ ๋ง์ด ์ฌ์ฉ๋๋ค.
- case์ ๊ฐ ํญ๋ชฉ์ ๋๋ผ ๋๋ ;;๋ฅผ ์ฌ์ฉํ์ฌ ํจํด์ ์ข ๊ฒฐ์ง๋๋ก ํ๋ค.
- ์์ ํจํด์์ ์ง์ ๋์ง ์์ ์ ๋ ฅ ๊ฐ์ด ์ ๋ ฅ๋ ๋๋ *) ๋ถ๋ถ์ ๊ธฐ์ ๋ ๋ช ๋ น์ ์ํํ๋ค.
case ๋ณ์ in
ํจํด1)
๋ช
๋ น;;
ํจํด2)
๋ช
๋ น;;
ํจํด3)
๋ช
๋ น;;
*)
๋ช
๋ น;;
esac
- ํจ์ ๋ง๋ค๊ธฐ
ํจ์๋ช
()
{
๋ช
๋ น
}

