๋ช
๋ น์ด๋ฅผ ์ฐ๊ฒฐ์์ผ์ฃผ๋ - | ์ ๋ฌธ์์ด์ ๋ณ๊ฒฝํด์ฃผ๋ - tr
โ | [ํ์ดํ๋ก ์ฝ์]๋ ๋ฆฌ๋ค์ด๋ ์
์ ํ ๋ฐฉ๋ฒ์ธ๋ฐ | ์ข์ธก ๋ช
๋ น์ด์ ์คํ ๊ฒฐ๊ณผ๋ฅผ | ์ฐ์ธก์ผ๋ก ๋๊ธฐ๋ ์ญํ ์ ํ๋ค. |๋ฅผ ์ฌ๋ฌ ๊ฐ๋ฅผ ์กฐํฉํด์ ์ฌ์ฉํ ์๋ ์์ผ๋ฏ๋ก ์์ฉ๋ฒ์๊ฐ ๋งค์ฐ ๋๋ค. ์ฐธ๊ณ ๋ก Shell Script์์ ||๋ or์ ์๋ฏธ์ด๊ณ , &&๋ and์ ์๋ฏธ์ด๋ค.
dmesg | less ํ๋ฉด ์ข์ธก์ ๋งค์ฐ ๋ง์ ๋ด์ฉ์ | less๊ฐ ๊ฐ๋ฌด๋ฆฌํด์ ํ์ด์ง๋ณ๋ก ๋ณด์ธ๋ค.
=>~ | grep "~" ์ข์ธก์ ~ ํ ๊ฒฐ๊ณผ์์ ์ฐ์ธก์ "~"ํ ๊ฒฐ๊ณผ๋ง ๋ณด์ด๋ผ๋ filtering ๊ธฐ๋ฅ์ ํ๋ค.
โ tr์ ๋ฌธ์์ด1์ ๋ฌธ์์ด2๋ก ๋ฐ๊พธ๋๋ฐ ์ฌ์ฉ๋๋๋ฐ "tr 'set1' 'set2'" ๊ตฌ๋ฌธ์ด๋ค.
=>์ค์ํ ๊ฒ์ tr 'root' 'ROOT'๋ผ๊ณ ํ ๋ 'root'๋ผ๋ ๋จ์ด๋ฅผ 'ROOT'๋ก ๋ฐ๊พธ๋ ๊ฒ์ด ์๋๋ผ 'r','o','t'๋ผ๋ ๊ฐ๊ฐ์ ๋จ์ด๋ฅผ 'R','O','T'๋ณํ์์ผ์ค๋ค.
์ด๋ ํ์ผ์์ ๋ฌธ์์ ์, ๋จ์ด์ ์, ์ค์ ์ ๋ฑ์ ์ ๋ณด๋ฅผ ๋ณด์ด๋ - wc
ํ์ผ์ ๋ํ ์ ๋ณด๋ฅผ ๋ณด์ด๋ -stat
์ด ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ๋ฉด file_name, meta-data, data, access, modify, change์ ๊ฐ์ ๋ณด์์ ์ ๋ณด๋ฅผ ๋ณด์ธ๋ค.
์ฌ์ฉ์๋ฅผ ์์ฑํ๋ฉด ์ฌ์ฉ์๋ /etc/passwd ํ์ผ์ ์ ์ฅ๋๋ค.
ํด๋น ์ฌ์ฉ์์ ํจ์ค์๋๋ /etc/shadow ํ์ผ์ ์ ์ฅ๋๋ค.
๋ช
๋ น์ด์ ์์น๋ฅผ ๊ฒ์ํด์ฃผ๋ - which, whereis, ๊ทธ๋ฆฌ๊ณ locate
์ด๋ฐ ๋ช
๋ น์ด๋ค์ ์์คํ
์ ์๋ ๋ชจ๋ ํ์ผ ์์ฑ๊ณผ ํ์ผ์ ๊ฒฝ๋ก์ ๋ํ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํด์ ๋น ๋ฅด๊ฒ ๊ฒ์ํ๋ค.
CentOS๋ฅผ ์ค์นํ๋ฉด ํจํค์ง ์
๋ฐ์ดํธ์ ๊ธฐ์กด ํจํค์ง์ ๋ณ๊ฒฝ ์ฌ๋ถ ๋ฑ์ ์ฒดํฌํด์ฃผ๋ ํจํค์ง ๊ด๋ฆฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ค์น๋๋ฏ๋ก ๋ณ๋๋ก ์ด๋ฐ ๋ชฉ์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ค์นํ ํ์๋ ์๋ค. CentOS์ ์ด๋ฐ ๊ธฐ๋ฅ์ ์์คํ
๊ด๋ฆฌ์ ๋ณด์ ์ ๊ฒ์์ ๋งค์ฐ ์ ์ฉํ๋ค.
ํ์ผ์์ฑ, ๋ณ์ ๊ฐ ๋ณด๊ธฐ, ๊ฐ ๋ณ๊ฒฝ ๋ฑ์ ๋น ๋ฅด๊ฒ ์ค์ ํด์ฃผ๋ - echo
์ด ๋ช
๋ น์ด๋ 'echo " " > ํ์ผ_๋ช
์'์ผ๋ก “ ” ์ฌ์ด์ ๋ด์ฉ์ ๋ฃ์ด์ ํ์ผ์ ์์ฑํ๊ฑฐ๋, ์์คํ
์ ํ๊ฒฝ๋ณ์๋ ์ฌ์ฉ์ ์ ์ ๋ณ์์ ๋ด์ฉ์ ๋ณผ ๋, ์ค์ ๊ฐ์ ๋ณ๊ฒฝํ ๋ ๋ฑ์์ ์ฌ์ฉ๋๋ค.
์น์์ ํ์ผ์ ๋ณต์ฌํด์ค๋ - wget, git, curl, ๊ทธ๋ฆฌ๊ณ lftp, lftpget
ํ์์๋ฒ(Configuration Management Server)
ํ์์๋ฒ๋ ๋ก์ปฌ ํด๋ผ์ด์ธํธ๋ค์ด git์ ๊ฐ์ Web์์๋ง ์ฌ์ฉํ ์ ์๋ ์๋น์ค๋ฅผ ๋ก์ปฌ ์น์ด๋ ๋ก์ปฌ ํ์ผ ์๋ฒ๋ฅผ ๊ตฌ์ฑํด์ ๋ก์ปฌ์์ ์ฌ์ฉํ๊ฒ ํ๋ ์๋ฒ๋ฅผ ๋งํ๋ค.
๋ก์ปฌ ๋คํธ์ํฌ์ ์๋ฒ ์ ์ฅ์๊ฐ ์๊ธฐ๋ฏ๋ก ํด๋ผ์ด์ธํธ๋ค์ ์น์ผ๋ก ๋ค์ด๊ฐ์ง ์๊ณ ๋ ํ์ํ ํ์ผ๋ค์ ๋ก์ปฌ git๋ ํ์ผ ์๋ฒ๋ก๋ถํฐ ๋น ๋ฅด๊ฒ ๋ค์ด๋ฐ์ ์ ์๊ณ , ๊ด๋ฆฌ์๊ฐ ํ์ผ์ด๋ ์์คํ
์ ๊ด๋ฆฌํ๊ธฐ ์ฌ์ฐ๋ฉฐ, ์ฌ์ฉ์๋ฅผ ๋๋ฉ์ธ ๋ด ์ฌ์ฉ์๋ก ์ ํํ ์ ์์ด์ ๋ณด์์ด ์ข์์ง๊ณ , WAN์ผ๋ก ๋๊ฐ์ง ์์ผ๋ฏ๋ก ์ ์ฒด์ ์ธ ๋คํธ์ํฌ ๋์ญํญ ํจ์จ๋ ์ข์์ง๊ฒ ๋๋ค. yum ์ ์ฅ์(repository)๋ ownCloud, git๋ฅผ ๋ก์ปฌ์ ์ค์นํด์ ํ์์๋ฒ ์์คํ
์ผ๋ก ์ฌ์ฉํ ์ ์๋ค.
ํ ํ๋ฉด์ฉ ์ถ๋ ฅํด์ฃผ๋ - more์ less
์ด more์ less ๋ช
๋ น์ด๋ ๋ด์ฉ์ด ๋ง์ ํ
์คํธ ํ์ผ์ ํ์ด์ง ๋จ์๋ก ํ๋ฉด์ ์ถ๋ ฅํ๋ค. ๊ทธ๋ฆฌ๊ณ cat ๋ช
๋ น์ด ๋์ ์ more๋ less๋ก more /etc/passwd์์ผ๋ก ํด์ ์์ ํ์ผ์ ์ฝ์ ์๋ ์๋ค.
head/tail์ ์ด๋ ํ์ผ์ ์ฒ์ 10์ค๊ณผ ๋ง์ง๋ง 10์ค์ ์ฝ์ด์ฃผ๋๋ฐ -n ์ซ์๋ฅผ ๋ถ์ด๋ฉด
ํด๋น n ์ค๊น์ง๋ง ์ฝ์ด์ค๋ค.
=>ํนํ tail -f /var/log/secure์์ผ๋ก ํด์ฃผ๋ฉด ๋ณด์ ์นจํฌ์ ๋ก๊ทธ๋ฅผ ๋ณด์ด๋ ์ด ํ์ผ์ '์ค์๊ฐ์ผ๋ก ๋ณด์ธ๋ค'.
์์ ๊ณ์ฐ์ ํด์ฃผ๋ - bc์ let
์ ์คํฌ๋ฆฝํธ์์๋ ์์ฃผ ์ฌ์ฉ๋๋ bc(basic calculator) ๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ๋ฉด ์ฝ์์์ ์์๊ณ์ฐ์ ์ฝ๊ฒ ํ ์ ์๋ค. ์ฌ์น์ฐ์ฐ์ ๋ฌผ๋ก x์ y์น(x^y) ๊ณ์ฐ๊ณผ, 10๋ฒ์ 16์ง๋ฒ, 2์ง๋ฒ์ 10์ง๋ฒ ๋ฑ์ผ๋ก ๋ฐ๊ฟ ์๋ ์๋ค.
\n(๊ฐํ๋ฌธ์), \t(ํญ์ผ๋ก ๋ฒ๋ฆฐ๋ค), \a(์ข
์๋ฆฌ ๋๋ค) ๋ฑ์ ํ๋ก๊ทธ๋๋ฐ์์ ์ฌ์ฉํ๋ค.
tee
tee ๋ช
๋ น์ด๋ ์ฝ์์์ ์คํ๋ ๋ด์ฉ์ ๋ณด๋ฉด์ ํํธ์ผ๋ก๋ ๊ทธ ๋ด์ฉ์ ์ ์ฅํ ๋ ์ฌ์ฉ๋๋ ๋ช
๋ น์ด์ธ๋ฐ | ์ข์ธก์ ์คํ๊ฒฐ๊ณผ๋ฅผ ํ์ค์ถ๋ ฅ(stdout)์ผ๋ก ์ฝ์์ ๋ณด์ด๊ณ , | ์ฐ์ธก์ ํ์ค์
๋ ฅ(stdin)์ผ๋ก ์ง์ ๋ ํ์ผ_๋ช
์ผ๋ก ์ ์ฅํด์ค๋ค.
๊ฐ๋จํ ๋งํ๋ฉด ์คํ ๋ด์ฉ์ ์ฝ์์ ๋ณด์ด๋ฉด์ ์ ์ฅ๋ ์์ผ์ค๋ค๊ณ ์๊ณ ์์ผ๋ฉด ๋๋ค. ์ต์
์ ๋ณดํต ๋ค์์ฒ๋ผ ๋ ๊ฐ๋ฅผ ์ด๋ค.
a : ์ถ๋ ฅํ ํ์ผ์ ์ง์ ํจ
i : interrupt signal์ ๋ฌด์ํจ์ด๋ค.
์ฝ์์์ ๋ฐ๋ก ๋ฉ์ผ์ ๋ณด๋ด๋ - mail, mutt์ mailx
์ด ํ๋ก๊ทธ๋จ๋ค์ ์์ฝ๊ฒ ์ฝ์์์ ์ด๋ฉ์ผ์ ๋ณด๋ผ ์ ์๋ ๋๊ตฌ๋ค์ด๋ค. ์ด๋ค์ ์คํํ๋ ค๋ฉด ์ฌ์ ์ ์์คํ
์ ํ
์คํธ ํ๋ฉด์์ ๋ฉ์ผ์ ์ฃผ๊ณ ๋ฐ์ ์ ์๋ MX(Mail eXchange) ์๋ฒ ํ๋ก๊ทธ๋จ sendmail์ด ์ค์น๋๊ณ ์คํ๋๊ณ ์์ด์ผ ํ๋ค.
Disposable Mail : ์ฌ์ ์ ๊ฐ์
์์ด ๋ฉ์ผ์ ์ฃผ๊ณ ๋ฐ์ ์ ์๋ ๋ฉ์ผ ์๋ฒ
=>mailinator.com / ruu.co.kr
history
์คํํ์๋ ๋ช
๋ น์ด๋ค์ ๋ณด์ธ๋ค.
์ ๊ท ํํ์์์ ์์ฃผ ์ฐ์ด๋ ์ฐ์ฐ๋ถํธ(operand, handle)๋ค์ ์ ๋ฆฌํ๋ค.
์ ์คํ
์ํฐ, ;, `๋ช
๋ น์ด`, $(๋ช
๋ น์ด) ๋ช
๋ น์ด๋ฅผ ์คํํจ
{ } { }์ ์ด๋ ๋ฌธ์์ ๋งค์น๋๋ฉด ์คํํจ <={Aa}
\ \๋ค์ ๊ฒ์ด ํน์๋ฌธ์์ธ ๊ฒ์ ํ์ํจ <=\(
| | ์์ ์คํ๊ฒฐ๊ณผ๋ฅผ | ๋ค์ ์
๋ ฅ์ผ๋ก ํจ
& ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์คํํจ
!์ซ์ history์์ ํด๋น ์ซ์์ ๋ช
๋ น์ด๋ฅผ ์คํํจ
* ์์์ ์ฌ๋ฌ ๋ฌธ์
? ์์์ ํ ๋ฌธ์
[ ] [ ] ๋ฒ์์ ๋งค์น๋๋ ๋ฌธ์ <=[a-z]
> > ์์ ์คํ๊ฒฐ๊ณผ๋ฅผ > ๋ค์ ์
๋ ฅ์ผ๋ก ํจ
>! > ์์ ์คํ๊ฒฐ๊ณผ๋ฅผ > ๋ค๋ก ๊ฐ์ ์
๋ ฅํจ
< < ๋ค์ ์คํ๊ฒฐ๊ณผ๋ฅผ < ์์ ์
๋ ฅ์ผ๋ก ํจ
>>, << >> ์์ ์คํ๊ฒฐ๊ณผ๋ฅผ >> ๋ค๋ก ์ถ๊ฐํจ
2> /dev/null ํ์ค ์๋ฌ๋ฅผ ์ฝ์์ ํ์ ์ ํจ
2>& 1 ํ์ค ์๋ฌ๋ฅผ ํ์ค ์ถ๋ ฅ์ผ๋ก ๋ณด๋
2>& /dev/null ํ์ค ์๋ฌ๋ฅผ ํ์ผ์ด๋ ์ฅ์น๋ก ๋ณด๋
0> A STDIN : ํค๋ณด๋ ์
๋ ฅ
1> A STDOUT : ํ๋ฉด ์ถ๋ ฅ
2> A STDERR : ํ๋ฉด ์๋ฌ
ํ์ผ์ ์ข ๋ ์ ์ฐพ์์ฃผ๋ ์ ๊ทํํ์ - *, ?, [], {}, 2>, 1>& ๋ฑ
์ ๊ท ํํ์์ด๋ [ ]๋ { }, ๊ทธ๋ฆฌ๊ณ *๊ณผ ?์ ๊ฐ์ ๋ถํธ๋ฅผ ์ฌ์ฉํด์ ๋ช
๋ น์ด ์คํ์ ๊ฐ๋ตํ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ธ๋ฐ, ์ ๊ท ํํ์์ผ๋ก ๋ง์ ํ์ผ๊ณผ ๋ฌธ์ฅ์ ํธ๋ฆฌํ๊ฒ ์กฐ์ํ๊ฒ ํด์ค๋ค. ์ ์คํฌ๋ฆฝํธ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค SQL ์ฟผ๋ฆฌ, Python, C, JAVA ๋ฑ์์๋ ์์ฃผ ์ฌ์ฉ๋๋ค.
cut
๋ด์ฉ์์ ํ์ํ ๋ถ๋ถ๋ง ์ถ์ถํด์ ๋ณด์ธ๋ค.
f ์ด ์ง์ ์ต์
๊ณผ
d ๋ถ๋ฆฌ์(Tab, Space, ,, :, # .....)๋ฅผ ์ฌ์ฉํ๋ค.