ÇØÄ¿Áî´º½º / ÇØÄ¿´ëÇÐ

Donation bitcoin(±âºÎ¿ë ºñÆ®ÄÚÀÎ ÁÖ¼Ò)

¡¡
1Pq3K39XM5xx4CifGKgppXeavtWNNHH7K4
¡¡
±âºÎÇϽŠºñÆ®ÄÚÀÎÀº "º¸¾È Ãë¾à °èÃþ"À» À§ÇØ »ç¿ëµÇ°í ÀÖ½À´Ï´Ù.
¡¡
¡¡

Donation bitcoin(±âºÎ¿ë ºñÆ®ÄÚÀÎ ÁÖ¼Ò)

¡¡
1Pq3K39XM5xx4CifGKgppXeavtWNNHH7K4
¡¡
±âºÎÇϽŠºñÆ®ÄÚÀÎÀº "º¸¾È Ãë¾à °èÃþ"À» À§ÇØ »ç¿ëµÇ°í ÀÖ½À´Ï´Ù.
¡¡

°øÁö

¡¡

1. MS ¿§Áö ºê¶ó¿ìÀú¿¡¼­ÀÇ °æ°íâÀº 'À©µµ¿ì µðÆæ´õ'¸¦ ²ô½Ã¸é µË´Ï´Ù.

             'À©µµ¿ì µðÆæ´õ ²ô±â'

2. Å©·Ò ºê¶ó¿ìÀú·Î Á¢¼Ó½Ã ³ª¿À´Â ¾Ç¼ºÄÚµå °æ°íâÀº ±¸±Û Å©·ÒÀÇ ¿¡·¯, Áï ¿ÀŽ(ŽÁö ¿À·ù)À̹ǷΠ¹«½ÃÇÏ½Ã¸é µË´Ï´Ù.

3. ÀÌ »çÀÌÆ®´Â ¾ÈÀüÇÏ¸ç ±ú²ýÇÏ´Ù´Â °ÍÀ» ¾Ë·Á µå¸³´Ï´Ù.

4. ¹«°íÇÑ »çÀÌÆ®µé¿¡ ´ëÇÑ °ø·æ ±â¾÷ ºê¶ó¿ìÀúµéÀÇ ¹«Â÷º°ÀûÀÎ 'ŽÁö ¿À·ù ȾÆ÷'°¡ »ç¿ëÀÚµéÀÇ Á¤º¸ °øÀ¯ÀÇ ÀÚÀ¯¸¦ ħÇØÇÏ°í ÀÖ½À´Ï´Ù. ÀÌ¿¡ ´ëÀÀÇÏ¿© ÀÌ ±â¾÷µéÀ» »ó´ë·Î ¼Ò¼ÛÀ» ÁغñÇÏ°í ÀÖ½À´Ï´Ù.

¡¡


ÇØÄ¿Áî´º½º Á¦°ø ¸®´ª½º + ½º¸¶Æ®ÆùÀÇ ¸ðµç°Í
 
 
No, 6387
±¸ºÐ: È°¿ëÆÁ
»çÀÌÆ®: ÇØÄ¿Áî´º½º
Á¾·ù: ¸®´ª½º
Á¶È¸: 463
grep ¸í·É¾î ÃÑÁ¤¸®  

1.grep ¸í·É¾î


1.1 grepÀÇ ÀǹÌ

grep : ÆÄÀÏ Àüü¸¦ µÚÁ® Á¤±ÔÇ¥Çö½Ä¿¡ ´ëÀÀÇÏ´Â ¸ðµç ÇàµéÀ» Ãâ·ÂÇÑ´Ù.

egrep : grepÀÇ È®ÀåÆÇÀ¸·Î, Ãß°¡ Á¤±ÔÇ¥Çö½Ä ¸ÞŸ¹®ÀÚµéÀ» Áö¿øÇÑ´Ù.

fgrep : fixed grep À̳ª fast grepÀ¸·Î ºÒ¸®¸ç, ¸ðµç ¹®ÀÚ¸¦ ¹®ÀÚ ±×·¡µµ Ãë±ÞÇÑ´Ù. Áï, Á¤         ±ÔÇ¥Çö½ÄÀÇ ¸ÞŸ¹®ÀÚµµ ÀÏ¹Ý ¹®ÀÚ·Î Ãë±ÞÇÑ´Ù.


1.2 grepÀÇ µ¿ÀÛ ¹æ¹ý

grep¿¡¼­ »ç¿ëÇÏ´Â Á¤±ÔÇ¥Çö½Ä ¸ÞŸ¹®ÀÚ

¸ÞŸ¹®ÀÚ

±â    ´É

»ç¿ë ¿¹

»ç¿ë ¿¹ ¼³¸í

^

ÇàÀÇ ½ÃÀÛ Áö½ÃÀÚ

'^love'

love·Î ½ÃÀÛÇÏ´Â ¸ðµç Çà°ú ´ëÀÀ

$

ÇàÀÇ ³¡ Áö½ÃÀÚ

'love$'

love·Î ³¡³ª´Â ¸ðµç Çà°ú ´ëÀÀ

.

ÇϳªÀÇ ¹®ÀÚ¿Í ´ëÀÀ

'l..e'

l ´ÙÀ½¿¡ µÎ ±ÛÀÚ°¡ ³ª¿À°í e·Î ³¡³ª´Â ¹®ÀÚ¿­À» Æ÷ÇÔÇÏ´Â Çà°ú ´ëÀÀ

*

¼±Ç๮ÀÚ¿Í °°Àº ¹®ÀÚÀÇ 0°³ ȤÀº ÀÓÀÇ°³¼ö¿Í ´ëÀÀ

' *love'

0°³ ȤÀº ÀÓÀÇ °³¼öÀÇ °ø¹é ¹®ÀÚ ÈÄ¿¡ love·Î ³¡³ª´Â ¹®ÀÚ¿­À» Æ÷ÇÔÇÑ Çà°ú ´ëÀÀ

[]

[] »çÀÌÀÇ ¹®ÀÚ ÁýÇÕÁß Çϳª¿Í ´ëÀÀ

'[Ll]ove'

love³ª Love¸¦ Æ÷ÇÔÇÏ´Â Çà°ú ´ëÀÀ

[^ ]

¹®ÀÚÁýÇÕ¿¡ ¼ÓÇÏÁö ¾Ê´Â ÇÑ ¹®ÀÚ¿Í ´ëÀÀ

'[^A-K]love'

A¿Í K »çÀÌÀÇ ¹üÀ§¿¡ Æ÷ÇÔµÇÁö ¾Ê´Â ÇÑ ¹®ÀÚ¿Í ove°¡ ºÙ¾îÀÖ´Â ¹®ÀÚ¿­°ú ´ëÀÀ

\<

´Ü¾îÀÇ ½ÃÀÛ Áö½ÃÀÚ

'\

love·Î ½ÃÀÛÇÏ´Â ´Ü¾î¸¦ Æ÷ÇÔÇÏ´Â Çà°ú ´ëÀÀ(vi,grep¿¡¼­ Áö¿ø)

\>

´Ü¾îÀÇ ³¡ Áö½ÃÀÚ

'love\>'

love·Î ³¡³ª´Â ´Ü¾î¸¦ Æ÷ÇÔÇÏ´Â Çà°ú ´ëÀÀ

(vi,grep¿¡¼­ Áö¿ø)

\(..\)

´ÙÀ½ »ç¿ëÀ» À§ÇØ Å±׸¦ ºÙÀδÙ.

'\(lov\)ing'

ÁöÁ¤µÈ ºÎºÐÀ» ÅÂÅ©1¿¡ ÀúÀåÇÑ´Ù. ³ªÁß¿¡ űװªÀ» Âü°íÇÏ·Á¸é \1À» ¾´´Ù. ¸Ç ¿ÞÂʺÎÅÍ ½ÃÀÛÇØ Å±׸¦ 9°³°¡Áö ¾µ ¼ö ÀÖ´Ù. ¿ÞÂÊ ¿¹¿¡¼­´Â lov°¡ ·¹Áö½ºÅÍ1¿¡ ÀúÀåµÇ°í ³ªÁß¿¡ \1·Î Âü°íÇÒ ¼ö ÀÖ´Ù.

x\{m\}

¹®ÀÚ x¸¦ m¹ø ¹Ýº¹ÇÑ´Ù.

'o\{5\}'

¹®ÀÚ o°¡ 5ȸ ¿¬¼ÓÀûÀ¸·Î ³ª¿À´Â ¸ðµç Çà°ú ´ëÀÀ

x\{m,\}

Àû¾îµµ m¹ø ¹Ýº¹ÇÑ´Ù.

'o\{5,\}'

¹®ÀÚ o°¡ ÃÖ¼ÒÇÑ 5ȸ ¹Ýº¹µÇ´Â ¸ðµç Çà°ú ´ëÀÀ

x\{m,n\}

mȸ ÀÌ»ó nȸ ÀÌÇÏ ¹Ýº¹ÇÑ´Ù.

o\{5,10\}'

¹®ÀÚ o°¡ 5ȸ¿¡¼­ 10ȸ »çÀÌÀÇ È½¼ö·Î ¿¬¼ÓÀûÀ¸·Î ³ªÅ¸³ª´Â ¹®ÀÚ¿­°ú ´ëÀÀ

grepÀÇ ¿É¼Ç

¿É¼Ç

µ¿ÀÛ ¼³¸í

-b

°Ë»ö °á°úÀÇ °¢ Çà ¾Õ¿¡ °Ë»öµÈ À§Ä¡ÀÇ ºí·Ï ¹øÈ£¸¦ Ç¥½ÃÇÑ´Ù. °Ë»ö ³»¿ëÀÌ µð½ºÅ©ÀÇ ¾îµðÂë ÀÖ´ÂÁö À§Ä¡¸¦ ¾Ë¾Æ³»´Âµ¥ À¯¿ëÇÏ´Ù.

-c

°Ë»ö °á°ú¸¦ Ãâ·ÂÇÏ´Â ´ë½Å, ã¾Æ³½ ÇàÀÇ ÃѼö¸¦ Ãâ·ÂÇÑ´Ù.  (count)

-h

ÆÄÀÏ À̸§À» Ãâ·ÂÇÏÁö ¾Ê´Â´Ù.

-i

´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐ ÇÏÁö ¾Ê´Â´Ù.(´ë¹®ÀÚ¿Í ¼Ò¹®ÀÚ¸¦ µ¿ÀÏÇÏ°Ô Ãë±Þ). (ignore)

-l

ÆÐÅÏÀÌ Á¸ÀçÇÏ´Â ÆÄÀÏÀÇ À̸§¸¸ Ãâ·ÂÇÑ´Ù.(°³Ç๮ÀÚ·Î ±¸ºÐ) (list file)

-n

ÆÄÀÏ ³»¿¡¼­ Çà ¹øÈ£¸¦ ÇÔ²² Ãâ·ÂÇÑ´Ù. (number)

-s

¿¡·¯ ¸Þ½ÃÁö ¿Ü¿¡´Â Ãâ·ÂÇÏÁö ¾Ê´Â´Ù. Á¾·á»óŸ¦ °Ë»çÇÒ ¶§ À¯¿ëÇÏ°Ô ¾µ ¼ö ÀÖ´Ù.

-v

ÆÐÅÏÀÌ Á¸ÀçÇÏÁö ¾Ê´Â Çุ Ãâ·ÂÇÑ´Ù. (invert)

-w

ÆÐÅÏ Ç¥Çö½ÄÀ» ÇϳªÀÇ ´Ü¾î·Î Ãë±ÞÇÏ¿© °Ë»öÇÑ´Ù. (word)

# grep -n '^jack:' /etc/passwd

(/etc/passwd ÆÄÀÏ¿¡¼­ jackÀ» ã´Â´Ù. jackÀÌ ÇàÀÇ ¸Ç ¾Õ¿¡ ÀÖÀ¸¸é Çà ¹øÈ£¸¦ È­¸éÀ¸·Î Ãâ·ÂÇÑ´Ù.)


1.3 grep°ú Á¾·á »óÅÂ

grepÀº ÆÄÀÏ °Ë»öÀÇ ¼º°ø ¿©ºÎ¸¦ Á¾·á »óÅ°ªÀ¸·Î µÇµ¹·ÁÁØ´Ù.

ÆÐÅÏÀ» ãÀ¸¸é 0, ÆÐÅÏÀ» ãÀ» ¼ö ¾øÀ¸¸é 1, Æθ®ÀÌ Á¸ÀçÇÏÁö ¾ÊÀ» °æ¿ì 2

sed,aÀÚ µîÀº °Ë»öÀÇ ¼º°ø ¿©ºÎ¿¡ ´ëÇÑ Á¾·á »óÅ°ªÀ» ¹ÝȯÇÏÁö ¾Ê´Â´Ù. ´Ù¸¸ ±¸¹® ¿¡·¯°¡ ÀÖÀ» °æ¿ì¿¡¸¸ ¿¡·¯¸¦ º¸°íÇÑ´Ù.


2. Á¤±ÔÇ¥Çö½ÄÀ» »ç¿ëÇÏ´Â grepÀÇ ¿¹Á¦

# grep NW datafile

# grep NW d*

(d·Î ½ÃÀÛÇÏ´Â ¸ðµç ÆÄÀÏ¿¡¼­ NW¸¦ Æ÷ÇÔÇÏ´Â ¸ðµç ÇàÀ» ã´Â´Ù.)

# grep '^n' datafile

(nÀ¸·Î ½ÃÀÛÇÏ´Â ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '4$' datafile

(4·Î ³¡³ª´Â ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep TB Savage datafile

(TB¸¸ ÀÎÀÚÀÌ°í Savage¿Í datafileÀº ÆÄÀÏ À̸§ÀÌ´Ù.)

# grep 'TB Savage' datafile

(TB Savage¸¦ Æ÷ÇÔÇÏ´Â ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '5\.' datafile

(¼ýÀÚ 5, ¸¶Ä§Ç¥, ÀÓÀÇÀÇ ÇÑ ¹®ÀÚ°¡ ¼ø¼­´ë·Î ³ªÅ¸³ª´Â ¹®ÀÚ¿­ÀÌ Æ÷ÇÔµÈ ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '\.5' datafile

(.5°¡ ³ª¿À´Â ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '^[we]' datafile

(w³ª e·Î ½ÃÀÛÇÏ´Â ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '[^0-9]' datafile

(¼ýÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ¸¦ Çϳª¶óµµ Æ÷ÇÔÇÏ´Â ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '[A-Z][A-Z] [A-Z]' datafile

(´ë¹®ÀÚ 2°³¿Í °ø¹é 1°³, ±×¸®°í ´ë¹®ÀÚ Çϳª°¡ ¿¬ÀÌ¾î ³ª¿À´Â ¹®ÀÚ¿­ÀÌ Æ÷ÇÔµÈ ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep 'ss* ' datafile

(s°¡ ÇÑ ¹ø ³ª¿À°í, ´Ù½Ã s°¡ 0¹ø ¶Ç´Â ¿©·¯¹ø ³ª¿Â ÈÄ¿¡ °ø¹éÀÌ ¿¬ÀÌ¾î µîÀåÇÏ´Â ¹®ÀÚ¿­À» Æ÷ÇÔÇÑ ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '[a-z]\{9\}' datafile

(¼Ò¹®ÀÚ°¡ 9¹ø ÀÌ»ó ¹Ýº¹µÇ´Â ¹®ÀÚ¿­À» Æ÷ÇÔÇÏ´Â ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '\(3\)\.[0-9].*\1 *\1' datafile

(¼ýÀÚ 3,¸¶Ä§Ç¥,ÀÓÀÇÀÇ ÇÑ ¼ýÀÚ,ÀÓÀÇ °³¼öÀÇ ¹®ÀÚ,¼ýÀÚ 3(ű×),ÀÓÀÇ °³¼öÀÇ ÅÇ ¹®ÀÚ,¼ýÀÚ 3ÀÇ ¼ø¼­¸¦ °®´Â ¹®ÀÚ¿­ÀÌ Æ÷ÇÑµÈ ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '\<>

(north·Î ½ÃÀÛÇÏ´Â ´Ü¾î°¡ Æ÷ÇÔµÈ ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '\' datafile

(north¶ó´Â ´Ü¾î°¡ Æ÷ÇÔµÈ ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# grep '\<[a-z].*n\>' datafile

(¼Ò¹®ÀÚ Çϳª·Î ½ÃÀÛÇÏ°í, À̾ ÀÓÀÇ °³¼öÀÇ ¿©·¯ ¹®ÀÚ°¡ ³ª¿À¸ç, nÀ¸·Î ³¡³ª´Â ´Ü¾î°¡ Æ÷ÇÔµÈ ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù. ¿©±â¼­ .*´Â °ø¹éÀ» Æ÷ÇÔÇÑ ÀÓÀÇÀÇ ¹®ÀÚµéÀ» ÀǹÌÇÑ´Ù.)


3. grep¿¡ ¿É¼Ç »ç¿ë

# grep -n '^south' datafile

(Çà¹øÈ£¸¦ ÇÔ²² Ãâ·ÂÇÑ´Ù.)

# grep -i 'pat' datafile

(´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾Ê°Ô ÇÑ´Ù.)

# grep -v 'Suan Chin' datafile

(¹®ÀÚ¿­ Suan ChinÀÌ Æ÷ÇÔµÇÁö ¾ÊÀº ¸ðµç ÇàÀ» Ãâ·ÂÇÏ°Ô ÇÑ´Ù. ÀÌ ¿É¼ÇÀº ÀÔ·Â ÆÄÀÏ¿¡¼­ ƯÁ¤ ³»¿ëÀÇ ÀÔ·ÂÀ» »èÁ¦Çϴµ¥ ¾²ÀδÙ.

# grep -v 'Suan Chin' datafile >black

# mv black datafile

)

# grep -l 'SE' *

(ÆÐÅÏÀÌ Ã£¾ÆÁø ÆÄÀÏÀÇ Çà ¹øÈ£ ´ë½Å ´ÜÁö ÆÄÀÏÀ̸§¸¸ Ãâ·ÂÇÑ´Ù.)

# grep -w 'north' datafile

(ÆÐÅÏÀÌ ´Ù¸¥ ´Ü¾îÀÇ ÀϺΰ¡ ¾Æ´Ñ ÇϳªÀÇ ´Ü¾î°¡ µÇ´Â °æ¿ì¸¸ ã´Â´Ù. northwest³ª northeast µîÀÇ ´Ü¾î°¡ ¾Æ´Ï¶ó, north¶ó´Â ´Ü¾î°¡ Æ÷ÇÔµÈ Çุ Ãâ·ÂÇÑ´Ù.)

# grep -i "$LOGNAME" datafile

(ȯ °æº¯¼öÀÎ LOGNAMEÀÇ °ªÀ» °¡Áø ¸ðµç ÇàÀ» Ãâ·ÂÇÑ´Ù. º¯¼ö°¡ Å«µû¿ÈÇ¥·Î µÑ·¯½Î¿© ÀÖ´Â °æ¿ì, ½©Àº º¯¼öÀÇ °ªÀ¸·Î ġȯÇÑ´Ù. ÀÛÀºµû¿ÈÇ¥·Î µÑ·¯½Î¿© ÀÖÀ¸¸é º¯¼ö ġȯÀÌ ÀϾÁö ¾Ê°í ±×³É $LOGNAME À̶ó´Â ¹®ÀÚ·Î Ãâ·ÂµÈ´Ù.)


4. egrep

egrep(extended grep) : grep¿¡¼­ Á¦°øÇÏÁö ¾Ê´Â È®ÀåµÈ Á¤±ÔÇ¥Çö½Ä ¸ÞŸ¹®ÀÚ¸¦ Áö¿ø  ÇÑ´Ù.

                                    grep¿Í µ¿ÀÏÇÑ ¸í·ÉÇà ¿É¼ÇÀ» Áö¿øÇÑ´Ù.

egrep¿¡¼­ Áö¿øÇÏ´Â È®Àå ¸ÞŸ¹®ÀÚ

¸ÞŸ¹®ÀÚ

±â´É

»ç¿ë ¿¹

»ç¿ë ¿¹ ¼³¸í

+

¼±Ç๮ÀÚ¿Í °°Àº ¹®ÀÚÀÇ 1°³ ȤÀº ÀÓÀÇ °³¼ö¿Í ´ëÀÀ

'[a-z]+ove'

1°³ ÀÌ»óÀÇ ¼Ò¹®ÀÚ µÚ¿¡ ove°¡ ºÙ¾îÀÖ´Â ¹®ÀÚ¿­°ú ´ëÀÀ. move,approve,love,behoove µîÀÌ ÇØ´çµÈ´Ù.

?

¼±Ç๮ÀÚ¿Í °°Àº ¹®ÀÚÀÇ0°³ ȤÀº 1°³¿Í ´ëÀÀ

'lo?ve'

l ´ÙÀ½¿¡ 0°³ÀÇ ¹®ÀÚ È¤Àº ÇϳªÀÇ ¹®ÀÚ°¡ o°¡ ³ª¿À´Â ¹®ÀÚ¿­°ú ´ëÀÀ. love,lve µîÀÌ ÇØ´çµÈ´Ù.

a|b

a ȤÀº b¿Í ´ëÀÀ

'love|hate'

love ȤÀº hate¿Í ´ëÀÀ.

()

Á¤±ÔÇ¥Çö½ÄÀ» ¹­¾îÁØ´Ù

'love(able|ly)'

lovable ȤÀº lovely¿Í ´ëÀÀ.

'(ov)+'

ov°¡ ÇÑ ¹ø ÀÌ»ó µîÀåÇÏ´Â ¹®ÀÚ¿­°ú ÀÏÄ¡.


4.1 egrep ¿¹Á¦

# egrep 'NW|EA' datafile

(NW³ª EA°¡ Æ÷ÇÔµÈ ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# egrep '3+' datafile

(¼ýÀÚ 3ÀÌ ÇÑ ¹ø ÀÌ»ó µîÀåÇÏ´Â ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# egrep '2\.?[0-9]' datafile

(¼ýÀÚ 2 ´ÙÀ½¿¡ ¸¶Ä§Ç¥°¡ ¾ø°Å³ª ÇÑ ¹ø ³ª¿À°í, ´Ù½Ã ¼ýÀÚ°¡ ¿À´Â ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# egrep ' (no)+' datafile

(ÆÐÅÏ no°¡ ÇÑ ¹ø ÀÌ»ó ¿¬¼ÓÇؼ­ ³ª¿À´Â ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# egrep 'S(h|u)' datafile

(¹®ÀÚ S ´ÙÀ½¿¡ h³ª u°¡ ³ª¿À´Â ÇàÀ» Ãâ·ÂÇÑ´Ù.)

# egrep 'Sh|u' datafile

(ÆÐÅÏ Sh³ª u¸¦ Æ÷ÇÔÇÑ ÇàÀ» Ãâ·ÂÇÑ´Ù.)

5. °íÁ¤ grep °ú ºü¸¥ grep

fgrep : grep ¸í·É¾î¿Í µ¿ÀÏÇÏ°Ô µ¿ÀÛÇÑ´Ù. ´Ù¸¸ Á¤±ÔÇ¥Çö½Ä ¸ÞŸ¹®ÀÚµéÀ» Ưº°ÇÏ°Ô Ãë±ÞÇÏÁö

         ¾Ê´Â´Ù.

# fgrep '[A-Z]****[0-9]..$5.00' file

([A-Z]****[0-9]..$5.00 ÀÌ Æ÷ÇÔµÈ ÇàÀ» Ãâ·ÂÇÑ´Ù. ¸ðµç ¹®ÀÚµéÀ» ¹®ÀÚ ÀÚü·Î¸¸ Ãë±ÞÇÑ´Ù.)

6. find ¸í·É¾î

find ¸í·ÉÀÇ ÀϹÝÀûÀÎ ÇüÅ´ ´ÙÀ½°ú °°´Ù.

find path expressions

°¢°¢ÀÇ ÀμöµéÀÇ Àǹ̴ ´ÙÀ½°ú °°´Ù.

path

ã±â ½ÃÀÛÇÒ À§Ä¡¸¦ ³ªÅ¸³½´Ù. ¿¹¸¦µé¾î, `.'Àº ÇöÀç µð·ºÅ丮¸¦ ³ªÅ¸³»°í, `/'Àº ·çÆ® µð·ºÅ丮ºÎÅÍ Ã£À» °äÀ» ³ªÅ¸³½´Ù.

expression

ƯÁ¤ ÆÄÀÏÀ» ã±â À§ÇÑ ¿©·Á°¡Áö Á¶°ÇµéÀ» Ç¥ÇöÇÏ´Â ºÎºÐÀ¸·Î option, test, action, operator µîÀÇ ±¸¹®À¸·Î ±¸¼ºµÇ¾îÁø´Ù.

±×·³, expressionÀÇ °¢°¢ÀÇ ±¸¼º ¿ä¼Ò¿¡ ´ëÇÏ¿© ¾Ë¾Æº¸ÀÚ. optionÀº test¿Í »ó°ü ¾øÀÌ Ç×»ó Àû¿ëµÈ´Ù. optionÀÇ ¹æ¹ý¿¡´Â ´ÙÀ½°ú °°Àº °ÍÀÌ ÀÖ´Ù.


-name : È®ÀåÀÚ°¡ txt ÀÎ È­ÀÏÀ» ã´Â´Ù.

         find / -name '*.txt'       

-perm : Æ۹̼ÇÀÌ 666(-rw-rw-rw-)ÀÎ È­ÀÏÀ» ã´Â´Ù.

         find . -perm 666       

-type : ÆÄÀÏÀÇ Å¸ÀÔÀ» ÁöÁ¤ÇÏ¿©, ã°íÀÚÇÏ´Â ÆÄÀÏÀ» ã´Â´Ù.

ŸÀÔÀÇ Á¾·ù´Â ´ÙÀ½°ú °°´Ù.
b : ºí·Ï Ư¼ö ÆÄÀÏ(block device)
c : ij¸¯ÅÍ Æ¯¼ö ÆÄÀÏ (character deice)
d : µð·ºÅ丮(directory)
f : ÀϹÝÆÄÀÏ(file)
l : ½Éº¼¸¯ ¸µÅ©(link)
p : ÆÄÀÌÇÁ (pipe)
s : ¼ÒÄÏ (socket)

ÇöÀç µð·ºÅ丮 ¾Æ·¡¿¡ ÀÖ´Â ¼­ºêµð·ºÅ丮¸¦ ¸ðµÎ ã´Â´Ù.

         find . -type d       

-atime +n/-n/n : ÃÖ±Ù nÀÏ ÀÌÀü¿¡ ¾×¼¼½ºµÈ ÆÄÀÏÀ» ã¾ÆÁØ´Ù.(accessed time)
+nÀº nÀÏ ¶Ç´Â ±×º¸´Ù ´õ ¿À·¡ ÀüÀÇ ÆÄÀÏ
-nÀº ¿À´Ã ºÎÅÍ nÀÏ Àü±îÁöÀÇ ÆÄÀÏ
nÀº Á¤È®È÷ nÀÏ Àü¿¡ ¾×¼¼½ºµÇ¾úÀ½À» ÀǹÌÇÑ´Ù.

½Ã½ºÅÛ Àüü¿¡¼­ ÇÑ ´Þ ¶Ç´Â ±× ÀÌ»óÀÇ ±â°£µ¿¾È Çѹøµµ ¾×¼¼½ºÇÏÁö ¾ÊÀº µð·ºÅ丮

         find / -atime +30 -type d       

-ctime +n/-n/n : ctimeÀº ÆÄÀÏÀÇ Æ۹̼ÇÀ» ¸¶Áö¸·À¸·Î º¯°æ½ÃŲ ³¯Â¥¸¦ ÀǹÌÇÑ´Ù. (changed time)
+nÀº nÀÏ ¶Ç´Â ±×º¸´Ù ´õ ¿À·¡ ÀüÀÇ ÆÄÀÏ
-nÀº ¿À´Ã ºÎÅÍ nÀÏ Àü±îÁöÀÇ ÆÄÀÏ
nÀº Á¤È®È÷ nÀÏ Àü¿¡ ¼öÁ¤µÇ¾úÀ½À» ÀǹÌÇÑ´Ù.

ÇöÀç µð·ºÅ丮 ¾Æ·¡¿¡¼­ ÃÖ±Ù ÀÏÁÖÀÏ µ¿¾È °íÄ£ ÆÄÀÏ

         find . -ctime -7       

-mtime +n/-n/n : mtimeÀº ÆÄÀϳ»ÀÇ data¸¦ ¸¶Áö¸·À¸·Î º¯°æÇÑ ³¯Â¥¸¦ ÀǹÌÇÑ´Ù.(modified time)
+nÀº nÀÏ ¶Ç´Â ±×º¸´Ù ´õ ¿À·¡ ÀüÀÇ ÆÄÀÏ
-nÀº ¿À´Ã ºÎÅÍ nÀÏ Àü±îÁöÀÇ ÆÄÀÏ
nÀº Á¤È®È÷ nÀÏ Àü¿¡ ¼öÁ¤µÇ¾úÀ½À» ÀǹÌÇÑ´Ù.
-cnewer ÆÄÀϸí : 'ÆÄÀϸí' ºÎºÐ¿¡ Àû¾îÁØ ÆÄÀϺ¸´Ù ´õ ÃÖ±Ù¿¡ ¼öÁ¤µÈ ÆÄÀϵéÀ» ã¾ÆÁØ´Ù.

test.txt È­ÀÏÀÌ »ý¼ºµÈ ÀÌÈÄÀÇ È­ÀÏÀ» ã´Â´Ù.

         find . -cnewer test.txt -print         

-user À¯Àú³×ÀÓ : 'À¯Àú³×ÀÓ' ºÎºÐ¿¡ ÁöÁ¤ÇÑ À¯Àú ¼ÒÀ¯ÀÇ ÆÄÀÏÀ» ã¾ÆÁØ´Ù.

nalabi ¶ó´Â °èÁ¤ÀÇ È­ÀÏÀ» ã¾ÆÁØ´Ù.

         find / -user nalabi


±×¿Ü ÀÚÁÖ ¾²ÀÌÁö ¾ÊÁö¸¸ Ãß°¡ ¿É¼ÇÀ¸·Î´Â ¾Æ·¡¿Í °°´Ù.

-maxdepth n 
0ÀÌ ¾Æ´Ñ Á¤¼ö°ªÀ¸·Î °æ·Î ±íÀ̸¦ ÁöÁ¤ÇÏ¿© °Ë»öÀ» ÇÒ °æ¿ì¿¡ »ç¿ëÇÑ´Ù. ¿¹¸¦µé¾î, '-maxdepth 1'Àº ½ÃÀÛÀ§Ä¡·Î ÁöÁ¤ÇÑ µð·ºÅ丮¸¸ °Ë»öÇÏ°í ÇÏÀ§ µð·ºÅ丮´Â ãÁö ¾Ê´Â´Ù.

-mindepth ¿É¼ÇÀº ¹Ý´ë·Î µ¿ÀÛÇÑ´Ù. Áï, ÁöÁ¤ÇÑ ¼ýÀÚ¸¸Å­ÀÇ ±íÀ̺ÎÅÍ ±× ÇÏÀ§ µð·ºÅ丮¸¦ °Ë»öÇÑ´Ù. (GNU find ¹öÀü) 

-follow 
½Éº¼¸¯ ¸µÅ©µÈ µð·ºÅ丮µµ °Ë»öÀ» ÇÒ °æ¿ì¿¡ »ç¿ëÇÑ´Ù.

-mount 
ÇöÀçÀÇ ÆÄÀÏ ½Ã½ºÅÛ°ú µ¿ÀÏÇÑ Å¸ÀÔÀÇ ÆÄÀÏ ½Ã½ºÅÛ¿¡¼­¸¸ °Ë»öÀ» ÇÒ °æ¿ì¿¡ »ç¿ëÇÑ´Ù. 
test¿¡´Â ´ÙÀ½°ú °°Àº ¹æ¹ýµéÀÌ ÀÖÀ¸¸ç, test¿¡ »ç¿ëÇÏ´Â Àμö¿¡´Â º¸´Ù Å« ¼ö¸¦ ÀǹÌÇÏ´Â `'³ª, º¸´Ù ÀÛÀº ¼ö¸¦ ÀǹÌÇÏ´Â `'¸¦ ÇÔ²² »ç¿ëÇÒ ¼ö ÀÖ´Ù. Àμö¿¡ ¾Æ¹« ¿¬»êÀÚ°¡ ¾øÀ» °æ¿ì¿¡´Â Á¤È®È÷ ±× Àμö °ªÀ» ÀǹÌÇÑ´Ù. 

-group 
ƯÁ¤ ±×·ì ¼ÒÀ¯ÀÇ ÆÄÀϵéÀ» ãÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù. 

-nouser 
¼ÒÀ¯ÀÚ°¡ ¾ø´Â ÆÄÀÏÀ» ãÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù. Áï, /etc/passwd ÆÄÀÏ¿¡ ¾ø´Â ¼ÒÀ¯ÀÚÀÇ ÆÄÀÏÀ» ãÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù. 

-nogroup 
¿Ã¹Ù¸¥ ±×·ìÀÇ ¼ÒÀ¯°¡ ¾Æ´Ñ ÆÄÀÏÀ» ãÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù. Áï, /etc/groups ÆÄÀÏ¿¡ ¾ø´Â ±×·ìÀÇ ¼ÒÀ¯ÀÎ ÆÄÀÏÀ» ãÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù.

newer file1 file2
`file1' º¸´Ù´Â ÀÌÈÄ¿¡ `file2' º¸´Ù´Â ÀÌÀü¿¡ »ý¼ºµÇ°Å³ª º¯ÇüµÈ ÆÄÀϵéÀ» ãÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù.

-size n[bckw] 
Å©±â°¡ 
n À¯´Ö(unit)ÀÎ ÆÄÀÏÀ» ãÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù. À¯´ÖÀº ±âº» ¼³Á¤(`b''¿Í ÇÔ²² »ç¿ëÇÑ °æ¿ì¿Í µ¿ÀÏ)ÀÎ 512 ¹ÙÀÌÆ®ÀÇ ºí·°, `c'¸¦ »ç¿ëÇÒ °æ¿ì¿¡´Â 1 ¹ÙÀÌÆ®, `k'¸¦ »ç¿ëÇÒ °æ¿ì¿¡´Â ų·Î¹ÙÀÌÆ®, `w'¸¦ »ç¿ëÇÒ °æ¿ì¿¡´Â 2 ¹ÙÀÌÆ®ÀÇ ¿öµå Å©±â¸¦ ³ªÅ¸³½´Ù. 

-empty 
ºñ¾îÀÖ´Â ÆÄÀÏÀ̳ª µð·ºÅ丮¸¦ ãÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù. (GNU find ¹öÀü) 

-regex 
Á¤±ÔÇ¥Çö½Ä(regular expression)À» ÀÌ¿ëÇÏ¿© ÆÄÀϵéÀ» ãÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù. `
-iregex'´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸º°ÇÏÁö ¾ÊÀ» °æ¿ì¿¡ »ç¿ëÇÑ´Ù. (GNU find ¹öÀü) 
actionÀº test¿¡¼­ÀÇ Á¶°Ç°ú ÀÏÄ¡ÇÏ´Â ÆÄÀϵ鿡 ´ëÇØ ¼öÇàÇÒ ÀÛ¾÷À» ¸í½ÃÇÏ´Â °ÍÀ¸·Î ´ÙÀ½°ú °°Àº ¹æ¹ýµéÀÌ ÀÖ´Ù. 

-print 
ãÀº ÆÄÀϵéÀ» Ç¥ÁØÃâ·Â(stdout)À¸·Î Ãâ·ÂÇÑ´Ù. ±âº»À¸·Î ¼³Á¤µÇ¾î ÀÖ´Ù. 

-fprint file 
ãÀº ÆÄÀϵéÀ» `
file'·Î Ãâ·ÂÇÑ´Ù. `file'ÀÌ Á¸Àç ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â »õ·Î »ý¼ºµÇ°í, Á¸ÀçÇÒ °æ¿ì¿¡´Â ±âÁ¸ÀÇ ÆÄÀÏÀº ¾ø¾îÁø´Ù. (GNU find ¹öÀü) 

-exec 
ÆÄÀÏÀ» ã¾ÒÀ» °æ¿ì, ãÀº ÆÄÀϵ鿡 ´ëÇØ Æ¯Á¤ ¸í·ÉÀ» ¼öÇà ÇÒ ¶§ »ç¿ëÇÑ´Ù. ÀϹÝÀûÀ¸·Î `-exec command {} ;'ÀÇ Çü½ÄÀ» ÃëÇÑ´Ù. 

-ok 
-exec¿Í µ¿ÀÏÇÑ ÀÛ¾÷À» ÇÑ´Ù. ´Ù¸¥ Á¡Àº, ¸í·ÉÀ» ½ÇÇàÇÒ ¶§¸¶´Ù ½ÇÇà Àǻ縦 ¹°¾îº»´Ù. 

-ls 
`ls -dils' Çü½ÄÀ¸·Î ãÀº ÆÄÀϵéÀÇ Á¤º¸¸¦ Ãâ·ÂÇÒ¶§ »ç¿ëÇÑ´Ù. 

-fls file 
`
ls'¿Í µ¿ÀÏÇÏ°Ô µ¿ÀÛÇÏ¸ç °á°ú¸¦ `file'·Î Ãâ·ÂÇÑ´Ù.
operator´Â test¿¡¼­ »ç¿ëÇÑ ¿É¼ÇµéÀ» Á¶ÇÕÇÏ¿© Á¶°Ç½ÄÀ» ¸¸µé°íÀÚ ÇÒ¶§ »ç¿ë´Â °ÍÀ¸·Î ´ÙÀ½°ú °°Àº ¹æ¹ýµéÀÌ ÀÖ´Ù. (¼³¸í ¼ø¼­´Â ¿ì¼±¼øÀ§(precedence)¿¡ µû¸¥´Ù.)

[¿¹Á¦] 
ÀÚ½ÅÀÇ È¨ µð·ºÅ丮¿¡¼­ È®ÀåÀÚ°¡ '.txt'ÀÎ ÆÄÀÏÀ» ãÀ» °æ¿ì 
$ find   -name "*.txt'' -print

ÇöÀç µð·ºÅ丮 ¹Ø¿¡¼­ ù±ÛÀÚ°¡ ¿µ¾î ´ë¹®ÀÚÀÎ ¸ðµç ÆÄÀÏÀ» ãÀ» °æ¿ì 
$ find . -name "[A-Z]*'' -print

'/usr/local'¿¡¼­ ù µÎ±ÛÀÚ´Â ¿µ¾î ¼Ò¹®ÀÚÀÌ°í ¼¼¹ø° ÇÑÀÚ¸®´Â ¼ýÀÚ·Î ½ÃÀÛÇÏ´Â À̸§À» °¡Áø ÆÄÀÏÀ» ãÀ» °æ¿ì 
$ find /usr/local -name "[a-z][a-z][0-9]*'' -print

È®ÀåÀÚ°¡ .txt ÀÎ ÆÄÀÏÀ» ãÀ¸¸é¼­ ÇöÀç µð·ºÅ丮¿Í ÇÑ ´Ü°è ¹ØÀÇ µð·ºÅ丮¿¡¼­¸¸ ÆÄÀÏÀ» ãÀ» °æ¿ì 
$ find   -maxdepth 2 -name "*.txt'' -print

ÇöÀç µð·ºÅ丮 ¹Ø¿¡¼­ `zzang'À̶ó´Â À̸§À» °¡Áø »ç¿ëÀÚ ¼ÒÀ¯ÀÇ ÆÄÀÏÀ» ãÀ» °æ¿ì 
$ find . -user zzang -print

½Ã½ºÅÛ¿¡¼­ ¼ÒÀ¯ÀÚ³ª ±×·ìÀÌ ¾ø´Â ÆÄÀÏÀ» ãÀ» °æ¿ì (Å©·¡Ä¿°¡ ¸¸µé¾î ³õÀº ÆÄÀÏÀÏ °æ¿ìµµ ÀÖÀ½) 
$ find / -nouser -o -nogroup -print

ÀÚ½ÅÀÇ È¨ µð·ºÅ丮¿¡¼­ ÃÖ±Ù 3ÀÏ µ¿¾È º¯°æµÈ ÆÄÀϵéÀ» ãÀ» °æ¿ì 
$ find . -mtime -3 -print

'/tmp'¿¡¼­ ÃÖ±Ù 5ÀÏ µ¿¾È º¯°æµÇÁö ¾ÊÀº ÆÄÀϵéÀ» ã¾Æ¼­ »èÁ¦ÇÒ °æ¿ì (ÆÄÀÏÀ» »èÁ¦ÇÒ ¶§¸¶´Ù »èÁ¦ÇÒ °ÍÀΰ¡¸¦ ¹°¾îº¸µµ·Ï) 
$ find . -mtime +5 -print -ok rm {} ;

ÇöÀç µð·ºÅ丮 ¹Ø¿¡ ÀÖ´Â ¸ðµç Æ÷½ºÆ® ½ºÅ©¸³Æ® ÆÄÀÏ(.ps)À» ã¾Æ¼­ gzipÀ¸·Î ¾ÐÃàÀ» ÇÏ°í ±× ¸ñ·ÏÀ» result.txt¶ó´Â ÆÄÀÏ¿¡ ÀúÁ¤ÇÒ °æ¿ì 
$ find . -name "*.ps" -fprint result.txt -exec gzip {} ;

Å©·¢Ä¿ÀÇ Ä§ÀÔÀÌ Àǽɽº·¯¿ö ÀÚ½ÅÀÇ ½Ã½ºÅÛ¿¡¼­ suid¿Í guid°¡ ¼³Á¤µÈ ÀÏ¹Ý ÆÄÀϵéÀ» ã¾Æ¼­ ±ÇÇÑÀ» È®ÀÎÇÒ °æ¿ì 
$ find / -type f -perm +6000 -print -ls

½Ã½ºÅÛ °ü¸®ÀÇ ½Ç¼ö·Î ÀÏ¹Ý »ç¿ëÀÚ°¡ ¾²±â ±ÇÇÑÀ» °®µµ·Ï ¼³Á¤µÇ¾î ÀÖ´Â ÆÄÀÏÀ» ã¾Æ¼­ ½ÇÇà ±ÇÇÑÀ» ¾ø¾Ö´Â °æ¿ì (´Ü, ¸µÅ© ÆÄÀÏÀº Á¦¿ÜÇÔ)
$ find / -perm +2 ! -type l -print -exec chmod o-w {} ;


7. ±âŸ È°¿ë

ÇöÀç µð·ºÅ丮¿¡¼­ °¡Àå Å« ÆÄÀÏÀ» ã±â

$ find  .  -type  f  | xargs  du  -s  | sort  -n  |  tail  -1

À§ ÇÑ ÁÙÀÇ ¸í·É¾î´Â ÇöÀç µð·ºÅ丮¿¡ ¼­ºê µð·ºÅ丮 Æ÷ÇÔÇÏ¿© °¡Àå Å« ÆÄÀÏÀ» Çϳª ã¾Æ¼­ À̸¦ Ãâ·ÂÇ϶ó´Â ÀǹÌÀÌ´Ù.
°£È¤, ÆÄÀÏ ½Ã½ºÅÛÀÇ FULLÀÌ µÇ¾î¼­ °¡Àå Å« ÆÄÀÏÀ» ãÀ¸·Á°í ÇÒ °æ¿ì ¾ÆÁÖ À¯¿ëÇÏ´Ù.


*  ÇöÀç µð·ºÅ丮¿¡¼­ È®ÀåÀÚ°¡ cpp ÀÌ°í string À̶õ ¹®ÀÚ¿­ÀÌ Æ÷ÇÔµÈ ÆÄÀÏ °Ë»ö

$ find / -name "*.cpp" -print -exec grep string {} \


*  ÇöÀç µð·ºÅ丮 À§Ä¡¿¡¼­ ÇÏÀ§µð·ºÅ丮¸¦ Æ÷ÇÔÇÏ¿© string À̶õ ¹®ÀÚ¿­À» Æ÷ÇÔÇÑ ÆÄÀÏ °Ë»ö

$ find . -type f | xargs grep "string"

ÀÌ ¹æ¹ýÀº ÆÄÀÏ À̸§¿¡ °ø¹éÀÌ µé¾î°¥ °æ¿ì ¹®Á¦°¡ »ý±æ ¼ö ÀÖ½À´Ï´Ù.
°ø¹éÀÌ Æ÷ÇÔµÈ È­ÀÏÀº ¾Æ·¡¿Í °°ÀÌ Ã£¾Æº¸½Ã¸é µÉ°Å¿¡¿ä 
$ find . -type f -print0 | xargs -0 grep "string"

* ÇöÀç µð·ºÅ丮³»¿¡¼­ È®ÀåÀÚ°¡ cpp ÀÌ°í string ¹®ÀÚ¿­À» Æ÷ÇÔÇÏ´Â ÆÄÀÏ °Ë»ö


ÆÄÀÏÀ̸§°ú ³»¿ëÀ» º¸¿©ÁÖ·Á¸é..
$ grep string `find . -name \*\.cpp`

ÆÄÀÏÀ̸§¸¸ º¸¿©ÁÖ·Á¸é..
$ grep -l string `find . -name \*\.cpp`


| (ÆÄÀÌÇÁ, pipe, ¼öÁ÷¹Ù) ÀÇ ¶æÀº

"¿ÞÂÊ ÇÁ·Î±×·¥ÀÇ ½ÇÇà °á°ú¸¦ ¿À¸¥ÂÊ ÇÁ·Î±×·¥ÀÇ ÀÔ·ÂÀ¸·Î °ø±ÞÇ϶ó" ÀÔ´Ï´Ù.

ÆÄÀÌÇÁ ¿ÞÂÊ ¿À¸¥ÂÊ ÇÁ·Î±×·¥ÀÌ µ¿½Ã¿¡ ½ÇÇàµÈ´Ù´Â °ÍÀº ¾ö¹ÐÈ÷ ¸»Çϸé Ʋ¸°¾ê±âÀÔ´Ï´Ù.

¿ÞÂÊ ÇÁ·Î±×·¥ÀÌ ½ÇÇàµÇ°í ±× °á°ú°¡ output µÇ¸é ¿À¸¥ÂÊ ÇÁ·Î±×·¥ÀÇ inputÀ¸·Î °ø±ÞµÇ´Â °ÍÀÔ´Ï´Ù. µ¿½Ã°¡ ¾Æ´Ñ ¼øÂ÷ÀûÀÎ °³³äÀÔ´Ï´Ù.

¿¹¸¦ µé¸é, 

"°Ë»ö ÇÁ·Î±×·¥ÀÇ Ãâ·ÂÀ» Á¤·Ä ÇÁ·Î±×·¥À¸·Î ÆÄÀÌÇÁ½Ãų ¼ö ÀÖ°í ´Ù½Ã ±× °á°ú¸¦ ÇÁ¸°Æà ÇÁ·Î±×·¥À¸·Î ÆÄÀÌÇÁ½ÃÅ°°Å³ª ÆÄÀÏ·Î ¸®´ÙÀÌ·ºÆ®Çؼ­ ÀúÀåÇÒ ¼öµµ ÀÖ´Ù."


grep Àº °¡Àå À¯¿ëÇÑ Åø ÁßÀÇ ÇϳªÀÔ´Ï´Ù.

grep ÀÇ ÁÖµÈ ±â´ÉÀº Á¤±ÔÇ¥Çö½Ä¿¡ ¸ÅĪµÇ´Â ¹®ÀÚ¿­À» ã¾Æ¼­ ÇØ´ç ¶óÀθ¸À» Ãâ·ÂÇÏ´Â °ÍÀÔ´Ï´Ù.

½±°Ô ¸»ÇØ, Ãâ·Â°á°ú(or ÀÔ·Â)¿¡¼­ ã´Â ¹®ÀÚ¿­ÀÌ ÀÖ´Â ¶óÀθ¸ º¸¿©ÁÖ´Â ±â´ÉÀ» ÇÕ´Ï´Ù.


egrepÀº grepÀÇ È®ÀåÆÇÀε¥ µÎ°³ÀÌ»óÀÇ ¹®ÀÚ¿­À» °Ë»öÇÕ´Ï´Ù.

# netatte -ap | egrep "aaa|bbb|ccc"

ÇÏ¸é  netstateÀÇ °á°ú¹°Áß aaa ȤÀº bbb ȤÀº ccc°¡ ÀÖ´Â ¶óÀÎÀ» Ãâ·ÂÇϴ°ÅÁÒ

Áï or °Ë»öÀÌ °¡´ÉÇÕ´Ï´Ù.


grep ÇÏÀ§ µð·ºÅ丮 ±îÁö Á¶È¸½Ã -r ¿É¼Ç ¾ÈµÉ°æ¿ì


º¸Åë ¸®´ª½º¿¡¼­´Â grep -r ÇÏÀ§ µð·ºÅ丮±îÁö ÆÄÀÏÀ» °Ë»ö ÇÒ¼ö ÀÖ°Ô recursive ¿É¼ÇÀ» Áö¿øÇÏÁö¸¸ ÀüÅë? grep¿¡´Â -r ¿É¼ÇÀÌ ¾ø´ÂÁö AIX ,HP,Solaris ¿¡¼­´Â -r ¿É¼ÇÀ» »ç¿ë ÇÒ¼ö ¾ø´Ù.

±×·¸´Ù¸é ¿©±â¼­ find ¿Í xargs ¸¦ ÀÌ¿ëÇÏ¿© -r ¿É¼Ç°ú °°Àº ½ÇÇàÀ» ÇÒ¼ö ÀÖ´Â ¹æ¹ýÀº ¾Æ·¡¿Í °°´Ù.


ex) dir : /home/search/cgi-src

       1. -r ¿É¼Ç ÀÌ¿ë : grep -r "include"  /home/search/cgi-src

       2.  find ¿Í xargs  ÀÌ¿ë : find /home/search/cgi-src | xargs grep "include"


¹¹ ¿©±â¼­ xargs´Â  °£´ÜÇÏ°Ô ¸»ÇØ ÆÄÀÌÇÁ '|' ¸¦ ÅëÇØ ÀÔ·Â ¹Þ¾Æ¼­ xargs µÚ¿¡ ÀÖ´Â ¸í·É¾î(grep)ÇÑÅ× ÆĶó¹ÌÅ͸¦ Áִ°Í.


* xargs È°¿ë (¿©·¯ÆÄÀÏ µ¿½Ã¿¡ ¹é¾÷Çϱâ)


¿¹¸¦µé¾î test.cpp

            test1.cpp

            test2.cpp


ÀÌ·±½ÄÀ¸·Î ´Ù¼öÀÇ ÆÄÀÏÀÌ ÀÖÀ»떄 ÀÏÀÏÈ÷ cp ¸í·É¾î·Î .bak ÆÄÀÏÀ» ¸¸µå·Á¸é ¹ø°Å·Î¿ï °ÍÀÌ´Ù.


Çѹø¿¡ ó¸®ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÀÖ´Ù.

$ ls test* | xargs -t -i cp {} {}.bak


                    ¼öÁ¤/»èÁ¦     ÀÌÀü±Û ´ÙÀ½±Û    
¹øÈ£Á¦ ¸ñÁ¾·ùÀÛ¼ºÀÏ
6389   iOS ¾Û º¸¾È°ú ¿ìȸ ±â¹ý ½º¸¶Æ®Æù  07-23
6388   Ä¿³Î µð¹ö°Å VirtualKD 2.8 µð¹ö°Å  07-22
6387   grep ¸í·É¾î ÃÑÁ¤¸® ¸®´ª½º  07-21
6386   'CUDA'¶õ ¹«¾ùÀΰ¡? Çϵå¿þ¾î  07-20
6385   ¸®´ª½º¿ë ºÎÆà ¸¶ÀÌÅ©·Î SD Ä«µå ¸¸µé±â ¸®´ª½º  07-18
6384   ÇÑÄÄ, ¸®´ª½º ±â¹Ý PC OS ¡®ÇÑÄı¸¸§¡¯ Ãâ½Ã ¸®´ª½º  07-17
6383   VM¿þ¾î "³ª¹«°¡ ¾Æ´Ñ ½£À» ¹Ù¶óº¸´Â º¸¾ÈÀü·« ¼ö¸³... ¸®´ª½º  07-16
6382   2020³â ±â¾÷ ³×Æ®¿öÅ· ½ÃÀå¿¡¼­ °¡Àå °­·ÂÇÑ ¾÷ü ... ±âŸ  07-15
6381   ifup / ifdown À» ÅëÇÑ static <-> dhcp º¯È¯ ¸®´ª½º  07-14
6380   µð·ºÅ丮 ³»ÀÇ ¸ðµç ÆÄÀϵé À̸§ ÀÏ°ý º¯°æ/ÆÄÀϳ»... ¸®´ª½º  07-13
 
 

 
óÀ½ ÀÌÀü ´ÙÀ½       ¸ñ·Ï Ȩ