์์ฃผ ์ฌ์ฉํ๋ ๋ช ๋ น์ด ์์ฃผ๋ก ์ ๋ฆฌํ ๋ฆฌ๋ ์ค ๋ช ๋ น์ด(1) - ํ์ผ, ํด๋ ๊ด๋ จ ๐ป
- ls
- wc
- find
- grep
ls
ํ์ผ ๋ฆฌ์คํ
$ ls [option] [directory name]
[options]
-a | ์จ๊ฒจ์ง ํ์ผ ๋ณด๊ธฐ |
-l | ์์ธ์ ๋ณด ๋ณด๊ธฐ (๊ถํ, ์์ ์, ๊ฐฑ์ ์ผ) |
-al | ์จ๊ฒจ์ง ํ์ผ + ์์ธ์ ๋ณด ๋ณด๊ธฐ (๊ถํ, ์์ ์, ๊ฐฑ์ ์ผ) |
ll
ls -l ๊ณผ ๋์ผ
*
์์์ ๋ฌธ์์ด์ ๋ํ๋
ls * | ํ ๋๋ ํฐ๋ฆฌ์ ๋ชจ๋ ํ์ผ๊ณผ ์๋ธ๋๋ ํฐ๋ฆฌ ๋์ด |
ls -F a* | ํ ๋๋ ํฐ๋ฆฌ์ a๋ก ์์ํ๋ ๋ชจ๋ ํ์ผ์ ์ด๋ฆ๊ณผ ํ์ผ ์ข ๋ฅ ์ถ๋ ฅ |
wc
ํ์ผ ๋ด ๋ผ์ธ, ๋จ์ด ๋ฌธ์์ ์ ๋ณด๊ธฐ
$ wc [option] [file]
[options]
-c | ์ ์ฒด ๋ฌธ์์ ์๋ฅผ ์ถ๋ ฅ |
-l | ์ ์ฒด ๋ผ์ธ์ ์๋ฅผ ์ถ๋ ฅ |
-w | ์ ์ฒด ๋จ์ด์ ์๋ฅผ ์ถ๋ ฅ |
ํ์ฌ ๋๋ ํ ๋ฆฌ ๋ด ํ์ผ์ ๊ฐ์๋ฅผ ์ธ๊ณ ์ถ์ ๋
$ ls | wc -w
find
ํ์ฌ ๋๋ ํ ๋ฆฌ ๋ด์์ ์ง์ ๋ ์ด๋ฆ์ ํ์ผ์ ์ฐพ๋ ๋ช ๋ น์ด
$ find [option] [path] [expression]
[options]
-p | ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๋ฐ๋ผ๊ฐ์ง ์๊ณ , ์ฌ๋ณผ๋ฆญ ๋งํฌ ์์ฒด ์ ๋ณด ์ฌ์ฉ. |
-l | ์ฌ๋ณผ๋ฆญ ๋งํฌ์ ์ฐ๊ฒฐ๋ ํ์ผ ์ ๋ณด ์ฌ์ฉ. |
-h | ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ฅผ ๋ฐ๋ผ๊ฐ์ง ์์ผ๋, Command Line Argument๋ฅผ ์ฒ๋ฆฌํ ๋ ์์ธ. |
-d | ๋๋ฒ๊ทธ ๋ฉ์์ง ์ถ๋ ฅ. |
[expression]
-name : ์ง์ ๋ ๋ฌธ์์ด ํจํด์ ํด๋นํ๋ ํ์ผ ๊ฒ์.
-empty : ๋น ๋๋ ํ ๋ฆฌ ๋๋ ํฌ๊ธฐ๊ฐ 0์ธ ํ์ผ ๊ฒ์.
-delete : ๊ฒ์๋ ํ์ผ ๋๋ ๋๋ ํ ๋ฆฌ ์ญ์ .
-exec : ๊ฒ์๋ ํ์ผ์ ๋ํด ์ง์ ๋ ๋ช ๋ น ์คํ.
-path : ์ง์ ๋ ๋ฌธ์์ด ํจํด์ ํด๋นํ๋ ๊ฒฝ๋ก์์ ๊ฒ์.
-print : ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅ. ๊ฒ์ ํญ๋ชฉ์ newline์ผ๋ก ๊ตฌ๋ถ. (๊ธฐ๋ณธ ๊ฐ)
-print0 : ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅ. ๊ฒ์ ํญ๋ชฉ์ null๋ก ๊ตฌ๋ถ.
-size : ํ์ผ ํฌ๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ ํ์ผ ๊ฒ์.
-type : ์ง์ ๋ ํ์ผ ํ์ ์ ํด๋นํ๋ ํ์ผ ๊ฒ์.
-mindepth : ๊ฒ์์ ์์ํ ํ์ ๋๋ ํ ๋ฆฌ ์ต์ ๊น์ด ์ง์ .
-maxdepth : ๊ฒ์ํ ํ์ ๋๋ ํ ๋ฆฌ์ ์ต๋ ๊น์ด ์ง์ .
-atime : ํ์ผ ์ ๊ทผ(access) ์๊ฐ์ ๊ธฐ์ค์ผ๋ก ํ์ผ ๊ฒ์.
-ctime : ํ์ผ ๋ด์ฉ ๋ฐ ์์ฑ ๋ณ๊ฒฝ(change) ์๊ฐ์ ๊ธฐ์ค์ผ๋ก ํ์ผ ๊ฒ์.
-mtime : ํ์ผ์ ๋ฐ์ดํฐ ์์ (modify) ์๊ฐ์ ๊ธฐ์ค์ผ๋ก ํ์ผ ๊ฒ์.
find ์ฌ์ฉ ์)
ํ์ฌ ๋๋ ํ ๋ฆฌ์ ์๋ ํ์ผ ๋ฐ ๋๋ ํ ๋ฆฌ ๋ฆฌ์คํธ ํ์ | find |
๋์ ๋๋ ํ ๋ฆฌ์ ์๋ ํ์ผ ๋ฐ ๋๋ ํ ๋ฆฌ ๋ฆฌ์คํธ ํ์ | find [PATH] |
ํ์ฌ ๋๋ ํ ๋ฆฌ ์๋ ๋ชจ๋ ํ์ผ ๋ฐ ํ์ ๋๋ ํ ๋ฆฌ์์ ํ์ผ ๊ฒ์ | find . -name [FILE] |
์ ์ฒด ์์คํ (๋ฃจํธ ๋๋ ํ ๋ฆฌ)์์ ํ์ผ ๊ฒ์ | find / -name [FILE] |
ํ์ผ ์ด๋ฆ์ด ํน์ ๋ฌธ์์ด๋ก ์์ํ๋ ํ์ผ ๊ฒ์ | find . -name "STR*" |
ํ์ผ ์ด๋ฆ์ ํน์ ๋ฌธ์์ด์ด ํฌํจ๋ ํ์ผ ๊ฒ์ | find . -name "*STR*" |
ํ์ผ ์ด๋ฆ์ด ํน์ ๋ฌธ์์ด๋ก ๋๋๋ ํ์ผ ๊ฒ์ | find . -name "*STR" |
๋น ๋๋ ํ ๋ฆฌ ๋๋ ํฌ๊ธฐ๊ฐ 0์ธ ํ์ผ ๊ฒ์ | find . -empty |
ํน์ ํ์ฅ์๋ฅผ ๊ฐ์ง ๋ชจ๋ ํ์ผ ๊ฒ์ ํ ์ญ์ | find . -name "*.EXT" -delete |
๊ฒ์๋ ํ์ผ ๋ฆฌ์คํธ๋ฅผ ์ค ๋ฐ๊ฟ ์์ด ์ด์ด์ ์ถ๋ ฅํ๊ธฐ | find . -name [FILE] -print0 |
ํ์ผ ๋๋ ๋๋ ํ ๋ฆฌ๋ง ๊ฒ์ํ๊ธฐ | find . -name [FILE] -type f |
ํ์ผ ํฌ๊ธฐ๋ฅผ ์ฌ์ฉํ์ฌ ํ์ผ ๊ฒ์ | find . -size +[N]c -and -size -[M]c |
๊ฒ์๋ ํ์ผ์ ๋ํ ์์ธ ์ ๋ณด ์ถ๋ ฅ. (find + ls) | find . -name [FILE] -exec ls -l {} \; |
๊ฒ์๋ ํ์ผ์ ๋ผ์ธ ์ ์ถ๋ ฅ. (find + wc) | find . -name [FILE] -exec wc-l {} \; |
๊ฒ์๋ ํ์ผ์์ ๋ฌธ์์ด ์ฐพ๊ธฐ. (find + grep) | find . -name [FILE] -exec grep "STR" {} \; |
๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ํ์ผ๋ก ์ ์ฅ. (find, redirection) | find . -name [FILE] > [SAVE_FILE] |
๊ฒ์ ์ค ์๋ฌ ๋ฉ์์ง ์ถ๋ ฅํ์ง ์๊ธฐ (find, redirection) | find . -name [FILE] 2> /dev/null |
ํ์ ๋๋ ํ ๋ฆฌ ๊ฒ์ํ์ง ์๊ธฐ | find . -maxdepth 1 -name [FILE] |
๊ฒ์๋ ํ์ผ ๋ณต์ฌ. (find + cp) | find . -name [FILE] -exec cp {} [PATH] \; |
-exec ์ต์ : find ๋ช ๋ น์ด๋ก ์ฐพ์ ๊ฒฐ๊ณผ ๋์์ ๋ํ ๋ช ๋ น์ด ์ ์ฉ
{} : find์์ ์ฐพ์๋ธ ๊ฒ์ ๊ฒฐ๊ณผ๊ฐ ํ๋์ฉ ๋ค์ด๊ฐ๋ ๋ถ๋ถ
\; : -exec ๋ค์ ๋ถ๋ถ์ ๋์์๋ ๋ช ๋ น์ด ์คํ
์์) xml ํ์ฅ์์ ํ์ผ ๋ฆฌ์คํธ ์์ธ์ ๋ณด์ ํจ๊ป ๋ณด์ฌ์ค
$ find . name '*.xml' -exec ls -al {} \;
grep
ํ์ ํด๋๋ฅผ ํฌํจํ์ฌ ์กด์ฌํ๋ ๋ชจ๋ ํ์ผ์์ ์ํ๋ ๋จ์ด๋ฅผ ์ฐพ์์ฃผ๋ ๋ช ๋ น์ด
$ grep [option] [pattern] [file]
[options]
-r | ํ์๋๋ ํ ๋ฆฌ๊น์ง ๊ฒ์ |
-n | ํ์ผ์ ๋ช๋ฒ์งธ ๋ผ์ธ์ ์๋์ง ํ์ |
-i | ๊ฒ์์ด๋ฅผ ๋์ ๋ฌธ์ ๊ตฌ๋ถ์์ด ๊ฒ์ |
-b | ๋ฌธ์์ ์ผ์นํ๋ ์ค์ ์์์ ์ถ๋ ฅ |
-c | ๋ฌธ์์ ์ผ์นํ๋ ์ค์ ์ ์ถ๋ ฅ |
-A | ํน์ ๋ฌธ์ ์๋ ์ถ๊ฐ๋ก ์ฌ๋ฌ ํ ์ถ๋ ฅ |
-B | ํน์ ๋ฌธ์ ์ ์ถ๊ฐ๋ก ์ฌ๋ฌํ ์ถ๋ ฅ |
์์) FILE.txt์์ "STR" ๋ฌธ์์ด ๊ฒ์.
$ grep "STR" FILE1.txt
LE.txt
'โ๏ธ Etc.' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[OS] ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ (Memory Structure) - code, data, stack, heap (0) | 2021.08.23 |
---|---|
[MacOS] ๋งฅ๋ถTip - ๋งฅ๋ถ ์ด๋ฏธ์ง ์ฉ๋ ์ค์ด๊ธฐ (0) | 2021.07.18 |
[Linux] ๋ฆฌ๋ ์ค ๋ช ๋ น์ด(2) - ์์คํ ๊ด๋ จ(df, ps, top) (0) | 2021.06.25 |
[GitHub] Git requested URL returned Error 403 ํด๊ฒฐ๋ฐฉ๋ฒ (0) | 2021.06.14 |
[Firebase] Firebase ์น ํธ์คํ ์์ฑ, ๋ฐฐํฌํ๊ธฐ + ๊ด๋ จ ์๋ฌ (0) | 2021.06.11 |