[Linux] egrep ๋ช ๋ น์ด
- -
egrep ๋ช ๋ น์ด
=========================== ์ฐธ ๊ณ ============================
high right : ์ถ๋ ฅ๊ฒฐ๊ณผ์ ๋นจ๊ฐ์์ผ๋ก ๋ํ๋๋ ๋ถ๋ถ
์ ๊ท ํํ์ : ํน์ ๋ฌธ์์ ํน์ํ ๊ธฐ๋ฅ์ ์ ํด์ ๊ทธ ๋ฌธ์๋ค์ ์กฐํฉํ์ฌ ๋ด๊ฐ ์ฐพ๊ณ ์ถ์
๋ฌธ์์ด์ ์ฐพ์ ์ ์๊ฒ ํจํด์ ๋ง๋๋ ๊ฒ์ ์๋ฏธํ๋ค.
๋ฉํ๋ฌธ์ : ํน์ ๋ฌธ์๊ฐ ํน์ํ ๊ธฐ๋ฅ์ ๊ฐ์ง๊ณ ์๋ ํน์๋ฌธ์๋ฅผ ๋ป ํ๋ค.
================================================================
- egrep๋ช ๋ น์ด๋ ์ง์ ํ ํ์ผ์ ๋ด์ฉ ์ค์ ๋ด๊ฐ ์ฐพ๊ณ ์ถ์ ๋ฌธ์์ด์ ์ฐพ์์ ์ฐพ๋
๋ฌธ์์ด์ด ์๋ ๊ทธ ํ์ ์ถ๋ ฅ
- egrep ๋ช ๋ น์ด๋ ๋ฐ๋์ ๋์์ด ์์ด์ผ ํ๋ค. ์ด๋ ํ์ผ์ ๋์์ผ๋ก ๊ทธ ๋ฌธ์์ด์ด
์๋์ง ์ฐพ์์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
ex) egrep "korea" korea1
- korea1์ด๋ผ๋ ํ์ผ์ "korea" ๋ผ๋ ๋จ์ด๊ฐ ์๋ค๋ฉด ๋นจ๊ฐ์ ์ผ๋ก ํ์ํด์ ์ถ๋ ฅ,
์๋ ํ์ ์ถ๋ ฅํ์ง ์๋๋ค.
ex) egrep "korea" ./
- ์๋ฌ ๋ฐ์
ex) egrep "korea" ./*
- "korea"๋ผ๋ ๋จ์ด๊ฐ ๋ ํ์ผ ๋ชจ๋๋ฅผ ์ถ๋ ฅ
ex) egrep -l "korea" ./*
- "korea" ๋ผ๋ ๋ฌธ์์ด์ด ๋ด ํ์ฌ์์น์ ์๋ ๋ชจ๋ ํ์ผ์ ๋์์ผ๋ก ํด์ ์๋์ง ์ฐพ์๋ณด๋๋ฐ
๋ง์ฝ์ ์ฐพ๊ฒ ๋ค ๋ผ๊ณ ํ๋ korea๋ผ๋ ๋ฌธ์์ด์ด ๋ค์ด๊ฐ ์๋ ํ์ผ์ด ์์ผ๋ฉด ๊ทธํ์ผ์ ์ด๋ฆ์ ์ถ๋ ฅ
- ์ต์ l ์ ์ฌ๋ฌ ํ์ผ์ ๋์์ผ๋ก ํน์ ๋ฌธ์์ด์ด ๋ค์ด๊ฐ ํ์ผ์ ์ฐพ์ ๋ ์ ์ฉํ๊ฒ ์ฌ์ฉํ ์ ์๋ค.
ex) egrep -c "korea" korea1
- ์ต์ c ๋ ์ํ๋ ๋ฌธ์์ด์ด ๋ค์ด๊ฐ ํ์ ์๋ฅผ ์ถ๋ ฅํ๋ค.
- korea1์ด๋ผ๋ ํ์ผ์ "korea"๋ผ๋ ๋ฌธ์์ด์ด ๋ชํ์ด ์กด์ฌํ๋์ง ํ์ ์๋ฅผ ์ถ๋ ฅ
ex) egrep -n "korea" korea1
- ์ต์ n ์ ์ฐพ๋ ๋ฌธ์์ด์ด ๋ค์ด๊ฐ ์๋ ๊ทธ ํ์ ๋ฒํธ์ ํจ๊ป ์ถ๋ ฅํ๋ค.
- ์๋ ํ์ ๋๋ฒ๋ง์ ์ถ๋ ฅํ์ง ์๊ณ "korea"๋ผ๋ ๋ฌธ์์ด์ด ๋ค์ด๊ฐ ํ์ ๋๋ฒ๋ง๋ง ์ถ๊ฐํด์ ์ถ๋ ฅ
=========================== ์ฐธ ๊ณ ============================
CentOS ์ด์์ฒด์ ๋ ๋/์๋ฌธ์๋ฅผ ์๊ฒฉํ ๊ตฌ๋ถํ๋ค.
๋๋ฌธ์ A์ ์๋ฌธ์ a๋ ์์ ํ ๋ค๋ฅธ ๊ธ์๋ก ์ธ์๋๋ค.
ex) egrep "KOREA" korea1 (์ฌ๊ธฐ์, korea1ํ์ผ์์ KOREA๋ผ๋ ๋จ์ด๋ ์๋ค.)
- ์ฐพ์ ์๊ฐ ์๋ค.
================================================================
ex) egrep -i "KOREA" korea1
- ์ต์ i ๋ ๋/์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์๊ณ ์ถ๋ ฅํ๋ค.
ex) mkdir -p aaa/bbb/ccc; touch aaa/{file1,bbb/file2,bbb/ccc/file3}
# file1 ๊ณผ file3์๋ง viํธ์ง๊ธฐ๋ฅผ ์ด์ฉํด์ korea๋ฅผ ์์ฑํ๊ณ ์ ์ฅ ํ ์ข ๋ฃ
egrep -lr "korea" aaa/*
- ์ถ๋ ฅ๊ฒฐ๊ณผ : aaa/bbb/ccc/file3
aaa/file1
- ๊ธฐ๋ณธ์ ์ผ๋ก ํ์์ ์๋ ๊ฒ์ ์ฐพ์ง ์๋๋ค.
- ์ต์ r์ ํ์์ ์๋ ๋ชจ๋ ํ์ผ์ ๋์์ผ๋ก ์ฐพ๊ฒ ๋ค.
- ๋ aaa ๋๋ ํฐ๋ฆฌ ์์ ์๋ ๊ฒ๋ค๋ง์ ๋์์ผ๋ก ์ฐพ๊ณ ์ถ์ ๋๋ ์ต์ r์์ด ์ฐพ์ผ๋ฉด ๋๊ณ ,
aaa ๋๋ ํฐ๋ฆฌ ์์ ์๋ ๊ฒ๋ค๊ณผ ๋๋ถ์ด์ ํ์์ ์๋ ๊ฒ๋ค ์ ๋ถ๋ฅผ ๋์์ผ๋ก ์ฐพ๊ณ ์ถ์
๋๋ ์ต์ r์ ์ฌ์ฉํ๋ฉด๋๋ค.
ex) egrep -v "korea" korea1
- ์ต์ v ๋ "korea1์ด๋ผ๋ ํ์ผ์ "korea"๋ผ๋ ๋ฌธ์์ด์ด ์๋ ํ๋ง ์ถ๋ ฅํ๋ค.
ex) egrep -o "korea" korea1
- ์ต์ o ๋ ์ฐพ๋ ๋ฌธ์์ด์ด ์์ผ๋ฉด ์ฐพ๋ ๋ฌธ์์ด๋ง ์ถ๋ ฅํ๋ค.
ex) egrep -x "korea" korea1
- ์ต์ x ๋ ์ฐพ๋ ๋ฌธ์์ด์ด ํ ์ ์ฒด์ ์ผ์นํ๋ฉด ์ถ๋ ฅํ๋ค.
- ์ฐธ๊ณ ex) 5๋ฒํ : korea24234 <- ์ฐพ์ง ์๋๋ค.
ex) 7๋ฒํ : korea <- ์ฐพ๋๋ค.
ex) egrep -w "hello korea" korea1
- ์ต์ w ๋ "hello korea"๊ฐ ๋ค์ด๊ฐ ํ์ ์ถ๋ ฅํ์ง๋ง, "hello korea" ๋ผ๋ ๋ถ๋ถ๋ง ๋นจ๊ฐ์ ์ฒ๋ฆฌ
๋๋จธ์ง ๋ถ๋ถ์ ๊ธฐ๋ณธ์์ผ๋ก ์ถ๋ ฅํ๋ค.
- egrep ๋ช ๋ น์ด์์ ์ต์ w ๋ ์ง์ ํ ๋ฌธ์์ด์ด ๋จ์ด ์์ฒด๊ฐ ์ ํํ๊ฒ ์ผ์นํ๋ฉด ์ถ๋ ฅํ๋ค.
ex) hello koreaasd ๋ผ๋ ํ์ด ์กด์ฌํ๋ค. ์ฌ๊ธฐ์ "hello korea"๋ฅผ ์ฐพ์๋ ์ฐพ์ ์๊ฐ ์๋ค.
- ํ์ง๋ง ํน์๊ธฐํธ๋ ์๊ดํ์ง ์๋๋ค.
ex) hello korea^^ ๋ผ๋ ํ์ด ์กด์ฌํ๋ค. ์ฌ๊ธฐ์ "hello korea"๋ฅผ ์ฐพ์ผ๋ฉด ์ฐพ์ ์ ์๋ค.
ex) egrep --color=never "korea" korea1
- korea1 ์ด๋ผ๋ ํ์ผ์ "korea"๋ผ๋ ๋ฌธ์์ด์ด ์๋๋ ๋นจ๊ฐ์์ผ๋ก ์ถ๋ ฅ๋์ง๋ง ๊ทธ๊ฒ์ never,
์ฆ ์์ ๋ณํ์ง ์๊ณ ๊ธฐ๋ณธ์์ผ๋ก ์ถ๋ ฅํ๋ค.
ex) egrep --color=always "korea" korea1
- egrep "korea" korea1 ์ด๋ ๋ค๋ฅธ ์ ์ด ๋ฌด์์ธ๊ฐ?
^ : ํ์ ์์์ ๋ป ํ๋ค.
ex) egrep "^korea" file1
- ํ์ ์์์ด korea๋ก ์์ํ๋ ๊ฒ๋ง ์ฐพ์์ ์ถ๋ ฅ
$ : ํ์ ๋ง์ง๋ง์ ๋ป ํ๋ค.
ex) egrep "korea$" file1
- ํ์ ๋ง์ง๋ง์ด korea๋ก ๋๋๋ ๊ฒ๋ง ์ฐพ์์ ์ถ๋ ฅ
. : ์๋ฌด ๋ฌธ์ 1๊ฐ ์๋ ํ์ ์ถ๋ ฅ
ex) egrep "korea.korea" file1
- korea๊ฐ ์จ ํ์ ์๋ฌด๋ฌธ์๊ฐ 1๊ฐ๊ฐ ์จ ํ์ korea๊ฐ ์จ๋ค.
.. : ์๋ฌด ๋ฌธ์ 2๊ฐ ์๋ ํ์ ์ถ๋ ฅ
ex) egrep "korea..korea" file1
- korea๊ฐ ์จ ํ์ ์๋ฌด๋ฌธ์๊ฐ 2๊ฐ๊ฐ ์จ ํ์ korea๊ฐ ์จ๋ค.
ex) egrep "[abc]" file1
[abc] : a๊ฐ ๋ค์ด๊ฐ ํ, b๊ฐ ๋ค์ด๊ฐํ ๊ทธ๋ฆฌ๊ณ c๊ฐ ๋ค์ด๊ฐ ํ์ด ๋ค์ด๊ฐ ๊ทธ ํ ์ ์ฒด๋ฅผ ์ถ๋ ฅ
๋ง์ฝ, a๋ ํ์ ์๊ณ b,c๋ง ์๋ค๋ฉด b,c๋ง ๋ค์ด์จ๋ค.
[a-c] : ์์ ๋์ผํ๊ฒ ์ ์ฉ์ด ๋๋ค. - ๋ฅผ ์ด์ฉํด์ ๋ฒ์๋ฅผ ์ง์ ํ ์ ์๋ค.
[^be] : b๊ฐ ๋ค์ด๊ฐ ํ๊ณผ e๊ฐ ๋ค์ด๊ฐ ํ๋ง ์ ์ธํ ๋๋จธ์ง ํ๋ค์ ์ถ๋ ฅํ๋ค.
b ๋๋ e๊ฐ ์๋ ํ์ ๋งค์นญ ํด์ค๋ค.
[^b-d] : b ๋๋ c ๋๋ d ๊ฐ ์๋ ํ์ ๋งค์นญ ํด์ค๋ค.
^[ab] : a ๋๋ b๊ฐ ํ์ ์์์ธ ํ์ ๋งค์นญ ํด์ค๋ค.
ํ์ ์์์ด a ๋๋ b์ธ ํ์ด ๋งค์นญ๋๋ค.
[ab]$ : a ๋๋ b๊ฐ ํ์ ๋์ธ ํ์ ๋งค์นญ ํด์ค๋ค.
ํ์ ๋์ด a ๋๋ b์ธ ํ์ด ๋งค์นญ๋๋ค.
^[^ab] : ํ์ ์์์ด a ๋๋ b๊ฐ ์๋ ํ์ด ๋งค์นญ๋๋ค.
[^ab]$ : ํ์ ๋ง์ง๋ง์ด a๋๋ b๊ฐ ์๋ ํ์ด ๋งค์นญ๋๋ค.
\<a : ๋จ์ด์ ์์์ด a ์ธ ํ๊ณผ ๋งค์นญํ์ฌ ์ถ๋ ฅ, ๋จ์ด์ ๊ธฐ์ค์ ๋์ด์ฐ๊ธฐ
a\> : ๋จ์ด์ ๋์ด a์ธ ํ๊ณผ ๋งค์นญํ์ฌ ์ถ๋ ฅ,
์ฌ๊ธฐ์๋ ๋จ์ด์ ๊ธฐ์ค์ ๋์ด์ฐ๊ธฐ
=========================== ์ฐธ ๊ณ ============================
์ด์ค์ผ์ดํ : ํ๊ตญ์ด๋ก๋ "์์ธ์ฒ๋ฆฌ"
๋ฉํ๋ฌธ์์ ํน์ํ ๊ธฐ๋ฅ์ ๋นผ๋ฒ๋ฆด ๋ ์ฌ์ฉํ๋ ๊ฒ
๋ฆฌ๋ ์ค ์ด์์ฒด์ ์์ <, > ๋ ๋ค๋ฅธ ๊ธฐ๋ฅ์ด ์กด์ฌํ๋ค.
๊ทธ๋ฌ๋ฏ๋ก ์ด์ค์ผ์ดํ ์ฒ๋ฆฌ ์ฆ, \(์ญ์ฌ๋ ์ฌ) ๋ฅผ ํตํด ๋ฉํ๋ฌธ์์ ํน์ํ ๊ธฐ๋ฅ์
๋ฒ๊ฒจ๋ฒ๋ฆฐ ํ ๊ทธ ๊ฐ ๊ทธ๋๋ก ์ฌ์ฉํ๋ ๊ฒ์ ์๋ฏธ
================================================================
x{4} : x์ ๊ฐ์ด 4 ๊ฐ๊ฐ ์ผ๋ ฌ๋ก ์๋ ํ์ ์ถ๋ ฅํ๋ค. x๋ผ๋ ๋ฌธ์๊ฐ 4๋ฒ
๋ฐ๋ณต๋๋ ํ์ด ๋งค์นญ๋๋ค. "xxxx" ์ด๋ผ๊ณ ํ๋ ๊ฒ๊ณผ ๊ฐ๋ค.
x{4,} : x๋ผ๋ ๋ฌธ์๊ฐ 4๋ฒ ์ด์ ๋ฐ๋ณต๋๋ ํ์ด ๋งค์นญ๋๋ค. ์ฆ ์ผ์ชฝ ๋ฌธ์์ ๋ฐ๋ณต
ํ์๋ฅผ ํํํ๋ ๊ฒ์ด๋ค.
x{3} : "xxx"๋ผ๋ ๋ป์ ๊ฐ์ง x{3} ์ด๋ฏ๋ก ๋ง์ฝ, xxxxxx(x{6}) ์ด๋ผ๋ ํ์ด ์๋ค๋ฉด
xxx์์ ํ๋ฒ ํ์ด๋ผ์ดํธ ์ฒ๋ฆฌ, ๊ทธ๋ค์ xxx๋ ํ์ด๋ผ์ดํธ ์ฒ๋ฆฌ
๊ทธ๋ฌ๋ฏ๋ก ์ ์ฒด๊ฐ ํ์ด๋ผ์ดํธ ์ฒ๋ฆฌ๋ ๊ฒ์ฒ๋ผ ๋ณด์ธ๋ค.
x{3,5} : x ๊ฐ 3๊ฐ, 4๊ฐ ,5๊ฐ ์ธ ๊ฒ ๋ชจ๋ ๋งค์นญ๋๋ค.
x{,3} : x ๊ฐ 0๊ฐ, 1๊ฐ, 2๊ฐ, 3๊ฐ ์ธ ๊ฒ ๋ชจ๋ ๋งค์นญ๋๋ค.
x+ : x ๋ผ๋ ๋ฌธ์๊ฐ 1๊ฐ ์ด์์ธ ํ์ด ๋งค์นญ๋๋ค. x{1,} ๊ณผ ๋๊ฐ์ ๊ฒฐ๊ณผ๊ฐ ๋ํ๋๋ค.
x? : x ๋ผ๋ ๋ฌธ์๊ฐ ์๊ฑฐ๋ 1๊ฐ์ธ ํ์ด ๋งค์นญ๋๋ค.
(babo)+ : babo๋ผ๋ ๋ฌธ์์ด์ด 1๊ฐ ์ด์
babo+ : bab์ด ์จ ํ o๋ผ๋ ๋ฌธ์๊ฐ 1๊ฐ ์ด์
- babooo
- babooooo
- babooooooo ์ด ๋ชจ๋ ๊ฒ๋ค๋ ์ถ๋ ฅ์ด ๋๋ค.
babo? : ์์ ํ์ผ๋ด์ฉ ๊ทธ๋๋ก ์ด๊ฒ์ ์ ๋ ฅํ์ ๋๋ babo๋ผ๋ ๋ฌธ์๋ง ํ์ด๋ผ์ดํธ ์ฒ๋ฆฌ๋ ํ
๊ทธํ์ด ์ ๋ถ ์ถ๋ ฅ. ์ด๊ฒ์ ํ๋ฒ๋ ํด์ํ๋ฉด, bab๋ผ๋ ๋จ์ด๋ ์ฐพ๊ณ o๊ฐ 0๊ฐ๊ฑฐ๋ 1๊ฐ์์ผ๋ฉด
์ถ๋ ฅํ๊ฒ ๋๋ค.
a|c : a ๋ผ๋ ๋ฌธ์ ๋๋ c๋ผ๋ ๋ฌธ์๊ฐ ๋ค๋์ค๊ฑฐ๋ ํ๋๋ง ๋์๋ ์ถ๋ ฅ
ex) ๋ช ๋ น์ด ํ์ค์ ํ์ ๋ด์ฉ ์ค์ korea์ banana ๋ ๋ค ๋ชจ๋ ๋ค์ด๊ฐ ํ์ ์ถ๋ ฅ
# ๋ช ๋ น์ด ํ์ค์ egrep ํ๋ฒ๋ง ์ฌ์ฉ
- ๋ต) egrep "(korea.*banana)|(banana.*korea)" file1
- ํด์) korea์ banana์ฌ์ด์ ๋จ์ด๊ฐ 0๊ฐ์ด์์ด ์๋ ํ์ ์ถ๋ ฅํ๋ค.
๊ทธ ํ banana์ korea ์ฌ์ด์ ๋จ์ด๊ฐ 0๊ฐ์ด์์ด ์๋ ํ๋ ์ถ๊ฐ๋ก ์ถ๋ ฅํ๋ค.
'DevOps > OS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Windows10] hosts ํ์ผ ์์ ํ๋ ๋ฒ (0) | 2017.08.08 |
---|---|
[Linux] ๋คํธ์ํฌ ํธ๋ํฝ ๋ชจ๋ํฐ๋ง vnstat ์ค์น (0) | 2017.02.24 |
[Linux] VI ๋ฌธ์ํธ์ง๊ธฐ ๋ฐ ๊ทธ ์ธ ๋ช ๋ น์ด๋ค (0) | 2016.11.08 |
[Linux] cp ๋ช ๋ น์ด ์ mv ๋ช ๋ น์ด (0) | 2016.11.08 |
[Linux] ๋๋ ํฐ๋ฆฌ ๋ฐ ํ์ผ (0) | 2016.11.08 |
์์คํ ๊ณต๊ฐ ๊ฐ์ฌํฉ๋๋ค. ๐