• ÇÁ¸®Ä«¿îÅÍ
  • Ç÷¡½ÃºÏ
  • ÇÁ¸®º¸µå
  • Àü±¤ÆÇ
  • À¥°øºÎ¹æ
  • Ä¿¹Â´ÏƼ
ÇѲ¨¹ø¿¡ ¸¹Àº ÆÄÀÏ Áö¿ì´Â ¼¼°¡Áö ¹æ¹ý 2011.04.14 11:18
±Û¾´ÀÌ : ¿î¿µÀÚ Á¶È¸ : 165 Ãßõ : 0
¿ø·¡ ÆÞ »ç¿ëÀÇ ÁÖ ¸ñÀûÀÌ ¸®½ºÆ® ¹× ÆÄÀÏ °ü¸®¿´±â ¶§¹®¿¡ ´Ù¾çÇÑ ¿ä±¸Á¶°Ç¿¡ ´ëÇؼ­ °¡Àå È¿À² ÀûÀÎ ¹æ¹ýÀº ÀÏÀÏÀÌ ½ºÅ©¸³Æ®ÆÄÀÏÀ» ¸¸µå´Â °Í º¸´Ù awk, ³ª sed ó·³ Ä¿¸Çµå¶óÀο¡¼­ ¹Ù·Î Äڵ带 ¸¸µå´Â ¹æ¹ýÀ̶ó°í »ý°¢ÇÏ°í ÀÖ¾ú´Ù.  ´öºÐ¿¡ ÇÁ·Î±×·¥À» ¸¸µé¶§ Á¶±Ý¸¸ ±æÀ̱⠱æ¾îÁ®µµ Çì¸Å´Â ºÎÀÛ¿ëÀÌ »ý±â±â´Â ÇßÁö¸¸.

±× Àü±îÁö´Â ±×³É »ó»ó·Â¿¡ ÀÇÁ¸ÇÏ¿© ³ª¸§ ÇÊ¿äÇÑ Äڵ带 ¸¸µé¾î¿À°ï Çß¾ú´Âµ¥ ´ÙÀ½ Äڵ带 º¸°í´Â ±× Æ÷½º¿¡ °¨µ¿Çعö·È´Ù.
find ./ -name "*.bak" -type f| perl -nleunlink  # ÄÚµå 1
ÇöÀç µð·ºÅ丮 ¾Æ·¡ÀÇ ¸ðµç *.bakÆÄÀÏÀ» Áö¿ì´Â ÄÚµå.

ÇÑ µð·ºÅ丮¿¡ Áö¿ö¾ß ÇÒ ÆÄÀÏÀÌ ¸Å¿ì ¸¹À»¶§(1024°³ ÀÌ»ó?)
rm -f *.bak        # ÄÚµå 2
´Â ÀÛµ¿ÇÏÁö ¾Ê´Â´Ù. À̶§ À§ÀÇ perl ÄÚµå1Àº Àß µ¿ÀÛÇÑ´Ù.(¹°·Ð ÄÚµå1Àº ÇÏÀ§µð·ºÅ丮±îÁö °Ë»öÇÑ´Ù´Â Â÷ÀÌ´Â ÀÖ´Ù.)
 perlÀÌ¿Ü¿¡µµ ¹æ¹ýÀº ÀÖ´Ù.
find ./ -name "*.bak" -type f -exec rm -f \{\} \;       #ÄÚµå3
find ./ -name "*.bak" -type f | xargs rm -f                   #ÄÚµå4
ÄÚµå3ÀÇ ¹®Á¦´Â ¸ðµç ÆÄÀϸ¶´Ù rmÀ» ½ÇÇàÇϹǷΠ¸Å¿ì ´À¸®´Ù´Â µ¥ ÀÖ´Ù.
ÄÚµå4ÀÇ ¹®Á¦´Â xargs¸¦ ÀÌ¿ëÇϱ⠶§¹®¿¡ rmÀ» È£ÃâÇϴ Ƚ¼ö°¡ ´õ Àû¾îÁø´Ù.
ÄÚµå1ÀÇ °æ¿ì ´Ü ÇϳªÀÇ perl ÇÁ·Î¼¼½º¸¦ ÀÌ¿ëÇÏ¿© ÆÄÀÏÀ» Áö¿ì±â ¶§¹®¿¡ À̹æ¹ýÀÌ °¡Àå ºü¸¦ °ÍÀ¸·Î ¿¹»óÇÒ ¼öÀÖ´Ù.

»ç½Ç ÄÚµå4ÀÇ xargs °¡  ÄÚµå1ÀÇ perlº¸´Ù ±×¸® ´À¸±²¨¶ó°í »ý°¢ÇÏÁö´Â ¾Ê´Â´Ù. Àû¾îµµ ÇÑ ÇÁ·Î¼¼½º·Î 100°³ÀÌ»óÀÇ ÆÄÀÏÀ» ó¸®ÇÒ ¼ö ÀÖ´Ù¸é ¼Ò¸ðµÇ´Â ½Ã°£Àº ÆÄÀÏÀ» »èÁ¦ Çϴµ¥ °É¸± ½Ã°£À̱⠶§¹®ÀÌ´Ù. °Ô´Ù°¡ ÄÚµå1Àº »ç½Ç»ó perlÀÇ ¾Æ¸§´Ù¿òÀ» º¸¿©ÁÖ±â À§ÇÏ¿© Á» °úÀåµÈ Ãø¸éÀÌ ÀÖ´Ù. ¿¹¸¦ µé¾î ó¸®Áß¿¡ Áö¿ìÁö ¸øÇÏ´Â ÆÄÀÏÀÌ À־, ȤÀº ¾Æ¿¹ ¾ø´Â ÆÄÀÏÀÌ ¸®½ºÆ®¿¡ ÁÖ¾îÁ®µµ ¾Æ¹«·± °æ°í¸¦ ³»Áö ¾Ê´Â´Ù. À̸¦ ÇØ°áÇϱâ À§Çؼ­ ¿ì¸®´Â "die" ³ª "print" ¶Ç´Â "warn"µîÀÇ ±¸¹®À» Ãß°¡ÇؾßÇÑ´Ù.
find ./ -name "*.bak" -type f | perl -nle'unlink or die"Can't remove $_ : $!"'
ºü¸¥ ¹æ¹ýÀ̶ó°í´Â ÇÏÁö¸¸ ÀÌÁ¦ Äڵ徲±â°¡ ¸Å¿ì ±ÍÂú¾ÆÁ³´Ù. ³ª¶óµµ xargs°¡ ¾²°í½Í¾î Áú °ÍÀÌ´Ù. (½ÇÁ¦·Î ±×·¯°í ÀÖ´Ù.) ÇÏÁö¸¸ ¹Ý´ë·Î »ý°¢Çغ¼ ¼ö ÀÖ´Ù. Áö¿ìÁö ¸øÇÏ´Â ÆÄÀÏ¿¡´ëÇÑ °æ°í¸¦ Ãß°¡Çß´ø °Íó·³ ¿ì¸®´Â ÇÊ¿äÇÑ ¹«¾ùÀ̵ç Ãß°¡ÇÒ ¼ö ÀÖ´Ù. ÅؽºÆ® ÆÄÀϸ¸ Áö¿öº¸ÀÚ.
find ./ -name "*.bak" -type f | perl -nle'-T and unlink or print "Can't remove $_ : $!"
 find ÀÇ ¿É¼ÇµéÀ» perl·Î ¿Å°Ü ´õ¿í °­·ÂÇÏ°Ô ¸¸µé ¼öµµ ÀÖ´Ù.
find | perl -nle '/\.bak$/ && -f && -T and unlink or print "Can't remove $_ : $!"
(ÆÄÀÏ Å×½ºÆ® ¿¬»êÀÚ°¡ Á¦´ë·Î ¸Â´ÂÁö Àß ±â¾ïÀÌ...)
(ÁÖÀÇ: && and µîÀÇ ¿¬»êÀÚ°¡ Çò°¥¸°´Ù¸é ¾ðÁ¦³ª °ýÈ£¿Í if °¡ ¿ì¸® ¾Õ¿¡ ÀÖÀ½À» ÀÖÁö ¸»ÀÚ)

Á¤¸» Áö¿ö¾ßÇÒ ÆÄÀÏÀÌ ¸¹À» ¼ö·Ï. Áö¿ö¾ß ÇÒ ÆÄÀÏÀ» ¼±ÅÃÇϴµ¥ ±âÁØÀÌ º¹ÀâÇÒ ¼ö·Ï, À§ÀÇ ÄÚµå ÇÑÁÙÀÌ Á¡Á¡ ª°Ô º¸ÀÏ °ÍÀÌ´Ù.



Ãâó :http://perlog.pung96.net
ÀλýÀº ª½À´Ï´Ù.
±×·¯¹Ç·Î ´Ù¸¥ »ç¶÷ÀÌ ¿ä±¸ÇÏ´Â »îÀ» »ì¸é¼­ ½Ã°£À» ³¶ºñÇؼ­´Â ¾È µË´Ï´Ù.
µ·°ú ¸í¿¹¸¦ ¾òÁö ¸øÇÏ´õ¶óµµ ³¡±îÁö ÀÚ½ÅÀÇ ±æÀ» °íÁýÇϽʽÿÀ
¸ñ·Ï À­±Û ¾Æ·§±Û
³»¾Ë FREECOUNT.NET ÇÁÄ«³Ý »ý±ä³¯ 2003.12.20 Ȩ | Ä«¿îÅÍ | Ç÷¡½ÃºÏ | ÇÁ¸®º¸µå | Àü±¤ÆÇ | À¥°øºÎ¹æ | Ä¿¹Â´ÏƼ | ÂÊÁöÇÔ