¿ø·¡ ÆÞ »ç¿ëÀÇ ÁÖ ¸ñÀûÀÌ ¸®½ºÆ® ¹× ÆÄÀÏ °ü¸®¿´±â ¶§¹®¿¡ ´Ù¾çÇÑ ¿ä±¸Á¶°Ç¿¡ ´ëÇؼ °¡Àå È¿À² ÀûÀÎ ¹æ¹ýÀº ÀÏÀÏÀÌ ½ºÅ©¸³Æ®ÆÄÀÏÀ» ¸¸µå´Â °Í º¸´Ù 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