- ls (list)
ํ์ผ๊ณผ ๋๋ ํฐ๋ฆฌ์ ๋ํ ์ ๋ณด๋ค์ ๋ชฉ๋ก ํ์์ผ๋ก ์ถ๋ ฅํ๋ค.
· ํ์: ls [์ต์ ][ํ์ผ/๋๋ ํฐ๋ฆฌ]
· ์ฃผ์ ์ต์
-a (all): ์จ๊ฒจ์ง ํ์ผ์ด๋ ๋๋ ํฐ๋ฆฌ ์ถ๋ ฅ
-l (long): ํ์ผ์ ์์ธํ ์ ๋ณด(ํผ๋ฏธ์ , ์์ ์, ๊ทธ๋ฃน, ํ์ผํฌ๊ธฐ, ์์ ์ผ์ ๋ฑ)์ถ๋ ฅ
-S (size): ํ์ผ ํฌ๊ธฐ ์์ผ๋ก ์ ๋ ฌํ์ฌ ์ถ๋ ฅ
-r (reverse): ํ์ผ ํฌ๊ธฐ ์ญ ์์ผ๋ก ์ถ๋ ฅ
-R (recursive): ํ์ ๋๋ ํ ๋ฆฌ๊น์ง ์ถ๋ ฅ
-h (human): K, M, G ๋จ์๋ฅผ ์ฌ์ฉํ์ฌ ํ์ผ ํฌ๊ธฐ๋ฅผ ๊ฐ๋ ์ฑ ์๊ฒ ์ถ๋ ฅ

- mkdir (make directory)
์ ๋๋ ํฐ๋ฆฌ๋ฅผ ์์ฑํ๋ค.
· ํ์: mkdir [๋๋ ํฐ๋ฆฌ๋ช ]

- rm (remove) / rmdir
ํ์ผ ํน์ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ญ์ ํ๋ค. ํด์งํต์ด ๋ฐ๋ก ์๊ณ ์๊ตฌ์ ์ผ๋ก ๋จ๋ฒ์ ์ญ์ ๋๋ฏ๋ก ์ ์ํด์ผ ํ๋ ๋ช ๋ น์ด๋ค.
· ํ์: rm [์ต์ ] [ํ์ผ๋ช ]
- ์ฃผ์ ์ต์
- ๊ธฐ๋ณธ rm : ํ์ผ์ ์ญ์ ํ ์ ์์ง๋ง ๋๋ ํ ๋ฆฌ๋ ์ญ์ ํ์ง ๋ชปํ๋ค.
- r : ๋๋ ํ ๋ฆฌ์ ๊ทธ ๋ด์ฉ๋ฌผ์ ๋ชจ๋ ์ญ์ ํ๋ค.
- rf : ํ์ธ์ ์ฐจ ์์ด ์ญ์ . ์กฐ์ฌํด์ ์ฌ์ฉํด์ผ ํ๋ค.
+) rmdir ๋ช ๋ น์ด๋ ๋น์ด ์๋ ๋๋ ํ ๋ฆฌ๋ง์ ์ ๊ฑฐ

rm๊ณผ rmdir์ ๋ชจ๋ ํ์ผ ๋๋ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ญ์ ํ๋ ๋ช
๋ น์ด์ธ๋ฐ,
ํนํ -r๊ณผ -rf ์ต์
์ ๊ฐ๋ ฅํ๊ณ ์ฃผ์ํด์ ์จ์ผ ํ๋ ์ต์
์ด์์.
์๋์ ๋ ๋ช ๋ น์ด์ ์ฐจ์ด, ์ต์ ์ค๋ช , ๊ทธ๋ฆฌ๊ณ ์ค์ ์์ ์ฝ๋์ ์์ ๊ฒฐ๊ณผ๋ฅผ ์์ธํ ๋ณด์ฌ์ค๊ฒ ๐
๐งพ 1๏ธโฃ rm ๋ช ๋ น์ด
โ ๊ธฐ๋ณธ ์ค๋ช
| ๋ช ๋ น์ด | rm (remove) |
| ์ญํ | ํ์ผ ๋๋ ๋๋ ํฐ๋ฆฌ ์ญ์ |
| ๊ธฐ๋ณธ ๋์ | ํ์ผ๋ง ์ญ์ (๋๋ ํฐ๋ฆฌ ์ญ์ ๋ ๋ถ๊ฐ) |
| ์ฃผ์ ์ต์ | -r (recursive), -f (force) |
โ๏ธ ์ต์ ์ค๋ช
| -r | ๋๋ ํฐ๋ฆฌ์ ๊ทธ ๋ด๋ถ์ ๋ชจ๋ ํ์ผ/ํด๋๋ฅผ ์ฌ๊ท์ ์ผ๋ก ์ญ์ |
| -f | ์ญ์ ์ ํ์ธ ๋ฉ์์ง ์์ด ๊ฐ์ ์ญ์ |
๐จ ์กฐ์ฌ!
rm -rf / → ์ ์ฒด ์์คํ ์ญ์ (์ค์ ์์คํ ์์ ๊ฐ๋ฅ)
⇒ ์ค์ ํ๊ฒฝ์์๋ ์ ๋ ์ ๋ ฅํ์ง ๋ง์์ผ ํ๋ ๋ช ๋ น์ด์์.
๐งฉ ์์ 1: -r ์ต์ ์ฌ์ฉ
๋ช ๋ น
$ ls
project report.txt
$ ls project
main.c data.txt result.log
$ rm -r project
๊ฒฐ๊ณผ
project ๋๋ ํฐ๋ฆฌ์ ๊ทธ ์์ ํ์ผ๋ค์ด ๋ชจ๋ ์ญ์ ๋จ
์ญ์ ํ ํ์ธ
$ ls
report.txt
๐ → project ๋๋ ํฐ๋ฆฌ๊ฐ ์ฌ๋ผ์ก์ด์.
๐งฉ ์์ 2: -rf ์ต์ ์ฌ์ฉ (๊ฐ์ ์ญ์ )
๋ช ๋ น
$ ls
oldfiles report.txt
$ ls oldfiles
a.txt b.txt c.txt
$ rm -rf oldfiles
๊ฒฐ๊ณผ
(์๋ฌด ๋ฉ์์ง๋ ์์ด ์ฆ์ ์ญ์ ์๋ฃ)
์ญ์ ํ ํ์ธ
$ ls
report.txt
๐ → oldfiles ๋๋ ํฐ๋ฆฌ์ ๋ด๋ถ ํ์ผ a.txt, b.txt, c.txt ๋ชจ๋ ์ฌ๋ผ์ก์ต๋๋ค.
โ ์ญ์ ์ ํ์ธ ๋ฉ์์ง๋ ์ถ๋ ฅ๋์ง ์์.
๐ 2๏ธโฃ rmdir ๋ช ๋ น์ด
โ ๊ธฐ๋ณธ ์ค๋ช
| ๋ช ๋ น์ด | rmdir (remove directory) |
| ์ญํ | ๋น์ด ์๋ ๋๋ ํฐ๋ฆฌ๋ง ์ญ์ ๊ฐ๋ฅ |
| ์ ํ | ๋๋ ํฐ๋ฆฌ ์์ ํ์ผ์ด ์์ผ๋ฉด ์๋ฌ ๋ฐ์ |
๐งฉ ์์ 3: rmdir ์ ์ ์ฌ์ฉ
๋ช ๋ น
$ ls
empty_dir work
$ ls empty_dir
(๋น์ด ์์)
$ rmdir empty_dir
๊ฒฐ๊ณผ
empty_dir ๋๋ ํฐ๋ฆฌ ์ญ์ ๋จ
์ญ์ ํ ํ์ธ
$ ls
work
๐งฉ ์์ 4: rmdir ์คํจ ์ฌ๋ก
๋ช ๋ น
$ ls work
a.txt b.txt
$ rmdir work
๊ฒฐ๊ณผ
rmdir: failed to remove 'work': Directory not empty
๐ → rmdir์ ๋ด๋ถ์ ํ์ผ์ด ์์ ๊ฒฝ์ฐ ์ญ์ ๋ถ๊ฐ.
๐ง ์์ฝ ์ ๋ฆฌ
| ๋ช ๋ น์ด | ์ฌ์ฉ ๋ชฉ์ | ์ญ์ ๋์ | ์ต์ | ์ค๋ช |
| rm | ํ์ผ/๋๋ ํฐ๋ฆฌ ์ญ์ | ํ์ผ or ํด๋ | -r | ๋๋ ํฐ๋ฆฌ ํฌํจ ๋ชจ๋ ํ์ ํญ๋ชฉ ์ฌ๊ท ์ญ์ |
| rm | ๊ฐ์ ์ญ์ | ํ์ผ or ํด๋ | -rf | ํ์ธ ์์ด ๋ชจ๋ ์ญ์ (์ํ) |
| rmdir | ๋๋ ํฐ๋ฆฌ ์ญ์ | ๋น์ด ์๋ ํด๋๋ง | ์์ | ๋ด๋ถ ํ์ผ ์กด์ฌ ์ ์คํจ |
โ ๏ธ ์ค์ต ์ ์ฃผ์์ฌํญ
- rm -rf ๋ ์ ๋ง ์กฐ์ฌํด์ผ ํจ (๋ฃจํธ๋ ์ค์ํ ๊ฒฝ๋ก์์ ์ ๋ ์คํ X)
- ์์ ํ๊ฒ ํ
์คํธํ ๋ ์์ ๋๋ ํฐ๋ฆฌ์์๋ง ์คํ
mkdir testdir
cd testdir
echo "data" > temp.txt
rm -rf .
โ ์ ๋ฆฌ ํ ์ค ์์ฝ
rm -r dir → ๋๋ ํฐ๋ฆฌ์ ๋ด๋ถ ํ์ผ ์ญ์
rm -rf dir → ํ์ธ ์์ด ๊ฐ์ ์ญ์ (๋งค์ฐ ์ํ!)
rmdir dir → ๋น์ด ์์ ๋๋ง ์ญ์ ๊ฐ๋ฅ
- cat (concatenate)
ํ์ผ ๋ด์ฉ์ ํ์ค ์ถ๋ ฅ์ผ๋ก ์ถ๋ ฅํ๊ฑฐ๋ ์ฌ๋ฌ ํ์ผ์ ์ด์ด์ ์์ฐจ์ ์ผ๋ก ์ถ๋ ฅํ๋ค.
· ํ์ : cat [ํ์ผ๋ช ]

- cd (change directory)
ํ์ฌ ์์ ๋๋ ํฐ๋ฆฌ๋ฅผ ๋ณ๊ฒฝํ๋ค.
· ํ์
- cd [๊ฒฝ๋ก] : ์ง์ ๋ ๊ฒฝ๋ก๋ก ์์ ๊ฒฝ๋ก๋ฅผ ๋ณ๊ฒฝํ๋ค.
- cd .. : ์์ ๋๋ ํฐ๋ฆฌ๋ก ์ด๋ํ๋ค.
- cd - : ๋ฐ๋ก ์ด์ ๋๋ ํฐ๋ฆฌ๋ก ์ด๋ํ๋ค.
- cd ~ : ํ ๋๋ ํฐ๋ฆฌ๋ก ์ด๋ํ๋ค.

- cp (copy)
ํ์ผ ๋๋ ๋๋ ํฐ๋ฆฌ๋ฅผ ๋ณต์ฌํ๋ค.
· ํ์: cp [์๋ณธํ์ผ] [๋ชฉ์ ์ง]
· ์ฃผ์ ์ต์
- ๊ธฐ๋ณธ cp : ๋จ์ผ ํ์ผ ๋ณต์ฌ
-r : ๋๋ ํฐ๋ฆฌ์ ๋ชจ๋ ํ์ผ๊ณผ ์๋ธ ๋๋ ํ ํฐ๋ฅผ ์ํ๋ ๊ณณ์ผ๋ก ๋ณต์ฌํ๋ค. ์๋ก ๋ณต์ฌํ ๋๋ ํ ๋ฆฌ๊ฐ ์๋ ๊ฒฝ์ฐ ์๋์ผ๋ก ์์ฑํ๋ค.
