Bzip2 mini-HOWTO David Fetter, david@fetter.org v2.00, 22 August 1999 ¿ªÀÚ : ÀÌÈ£¿¬ > ÀÌ ¹®¼­´Â »õ·Î¿î ¾ÐÃà ÇÁ·Î±×·¥ÀÎ bzip2¸¦ ¾î¶»°Ô »ç¿ëÇÏ´ÂÁö À̾߱âÇÑ´Ù. sgmlÀÇ ·ÎÄÃÄ«ÇÇ´Â ÇöÀçÀÇ »çÀÌÆ® ¿¡ ÀÖ°í, "±ÇÀ§°¡ ÀÖ´Â" sgmlÀº > ¿¡ ÀÖ´Ù. ______________________________________________________________________ ¸ñÂ÷ 1. ¼Ò°³ 1.1 °³Á¤ÆÇ ¿ª»ç 1.1.1 v2.00 1.1.2 v1.92 1.1.3 v1.91 1.1.4 v1.9 1.1.5 v1.8 1.1.6 v1.7 1.1.7 v1.6 1.1.8 v1.5 1.1.9 v1.4 1.1.10 v1.3 1.1.11 v1.2 1.1.12 v1.1 1.1.13 v1.0 2. Bzip2 ¾ò±â 2.1 ´ç½ÅÀÇ ¾ð¾îÀÇ bzip2-HOWTO 2.2 ÄÄÆÄÀÏµÈ bzip2 ¹ÙÀ̳ʸ® ¾ò±â 2.3 Bzip2 ¼Ò½º ¾ò±â 2.4 ´ç½ÅÀÇ ÄÄÇ»ÅÍ·Î bzip2 ÄÄÆÄÀÏÇϱâ 3. Bzip2¸¦ ´Üµ¶À¸·Î ¾²±â 4. Bzip2¸¦ tar°ú °°ÀÌ ¾²±â 4.1 °¡Àå ½¬¿î ¼³Ä¡: 4.2 root Ư±Ç ¾øÀÌ ½±°Ô ¼³Ä¡ÇÏ°í »ç¿ëÇϱâ: 4.3 ·çÆ®ÀÇ Á¢±ÙÀÌ ÇÊ¿äÇÏÁö¸¸ ½±°Ô »ç¿ëÇϱâ. 5. Bzip2¸¦ less¿Í °°ÀÌ ¾²±â 6. Bzip2¸¦ emacs¿Í °°ÀÌ ¾²±â 6.1 ¸ðµÎ¸¦ À§ÇØ emacs ¹Ù²Ù±â: 6.2 ÇÑ »ç¶÷À» À§ÇØ emacs ¹Ù²Ù±â: 7. Bzip2¸¦ wu-ftpd¿Í °°ÀÌ ¾²±â 8. Bzip2¸¦ grep¿Í °°ÀÌ ¾²±â 9. Bzip2¸¦ XÀÇ ³Ý½ºÄÉÀÌÇÁ°ú °°ÀÌ ¾²±â. ______________________________________________________________________ 1. ¼Ò°³ Bzip2´Â ÀڷḦ ¾ÐÃàÇϱâ À§ÇÑ ÁÁÀº »õ·Î¿î ¾Ë°í¸®ÁòÀÌ´Ù. ÀϹÝÀûÀ¸·Î gzipÀ¸·Î ÇÑ °Í º¸´Ù 60-70%ÀÇ Å©±â·Î ¸¸µç´Ù. ÀÌ ¹®¼­´Â ´ç½ÅÀ» bzip2¸¦ ÅëÇÏ¿© ÀÏ¹Ý ¾ÖÇø®ÄÉÀ̼ÇÀ» ÀÌ¿ëÇÏ°Ô ¸¸µé °ÍÀÌ´Ù. ÀÌ ¹®¼­ÀÇ ¹Ì·¡ÀÇ ¹öÀüÀº bzip2¸¦ ¸¸µç Julian Seward > °¡ Ä£ÀýÈ÷ ¾´ bzip2 C ¶óÀ̺귯¸®ÀÎ libbzip2°¡ ÀÖÀ» °ÍÀÌ´Ù. ¶óÀ̺귯¸®¿¡ °üÇÑ ³·Àº ·¹º§ÀÇ bzip2 ¸Þ´º¾óÀÌ > ¿¡ ÀÖ´Ù. ÀÌ ¹®¼­ÀÇ ¹Ì·¡ÀÇ ¹öÀüµéÀº ¾Æ¸¶ ¶ÇÇÑ bzip2¸¦ ¸®´ª½º Ä¿³Î¿¡¼­ ½á¾ßÇÏ´ÂÁö (±×¸®°í ¾î¶»°Ô)¿¡ °üÇÑ Çؼ³¿¡ ´ëÇÑ ¿ä¾àÀ» Æ÷ÇÔÇÒ °ÍÀÌ´Ù. 1.1. °³Á¤ÆÇ ¿ª»ç 1.1.1. v2.00 ``Bzip2¸¦ less¿Í °°ÀÌ »ç¿ëÇϱâ'' ºÎºÐÀÌ º¯°æµÇ¾ú´Ù ±×·¡¼­ .tar.bzip2 ÆÄÀÏÀ» ½ÇÁ¦·Î ÀÐÀ»¼ö ÀÖ´Ù. Á¤Á¤ÇÑ °Í¿¡ ´ëÇØ Nicola Fabiano > ¿¡°Ô °¨»çÇÑ´Ù. buzzit À¯Æ¿¸®Æ¼°¡ °»½ÅµÇ¾ú´Ù. tar Á¤º¸°¡ °»½ÅµÇ¾ú´Ù. 1.1.2. v1.92 ``Bzip2 ¹ÙÀ̳ʸ® ¾ò±â'' ºÎ¹®ÀÌ º¯°æµÇ¾ú°í, S.u.S.E.¿¡ Ãß°¡ÇÑ °ÍÀ» Æ÷ÇÔ ÇÑ´Ù. 1.1.3. v1.91 ¿ÀŸ°¡ ±³Á¤µÇ¾ú°í ``Bzip2¸¦ tar°ú °°ÀÌ ¾²´Â ºÎ¹®''ÀÇ ¼Ð Ç¥ÇöÇü½ÄÀÇ ÀÏ ºÎ¸¦ ±ú²ýÇÏ°Ô Çß´Ù. ÀÌ °Íµé¿¡ ´ëÇØ Alessandro Rubini¿¡°Ô °¨»çÇÑ´Ù. ÃÖÃÊÀÇ bzip2 µ¥ÀÌÅ͸¦ Áþ¹âÁö ¾Ê±â À§ÇØ buzzit ÅøÀ» °»½ÅÇß´Ù. Zgrep°°Àº ÅøÀÎ bgrep°¡ Ãß°¡µÇ¾ú´Ù. 1.1.4. v1.9 Gcc 2.7.* ¹®Á¦¸¦ ±ú²ýÇÏ°Ô Çß´Ù. ÀÌ°ÍÀ» ÁöÀûÇÑ Ulrik Dickow¿¡°Ô °¨»çÇÑ´Ù. Leonard Jean-MarcÀÇ ÈǸ¢ÇÑ tar°ú °°ÀÌ »ç¿ëÇÏ´Â ¹æ¹ýÀÌ Ãß°¡µÇ¾ú´Ù. Linux AkerlundÀÇ ½º¿þµ§ ¹ø¿ªÀÌ Ãß°¡µÇ¾ú´Ù. Arnaud LaunayÀÇ Á¦¾ÈÀ¸·Î wu-ftpd ºÎ¹®À» °íÃÆ´Ù. ¹ø¿ªµéÀÌ ±×µé ÀÚ½ÅÀÇ ºÎ¹®À¸·Î ¿Å°ÜÁ³´Ù. 1.1.5. v1.8 Buzzit°ú ±×°ÍµéÀÌ ¼ÓÇÑ°÷ÀÇ sgmlÀÇ tar.diff¸¦ ³Ö¾ú´Ù. ±¸µÎÁ¡°ú Çü½ÄÀ» ¼öÁ¤Çß´Ù. Arnaud Launay¿¡°Ô ³ªÀÇ º¹»ç¸¦ Á¤Á¤ÇÑ ±×ÀÇ µµ¿ò¿¡ ´ëÇØ °¨»ç ÇÑ´Ù. :-) ´ëÁßÀÇ °ü½É ºÎÁ·À¸·Î »õ·Î¿î Àû´çÇÑ xv ÇÁ·ÎÁ§Æ®¸¦ Çß´Ù. ÀÌ ¹®¼­ÀÇ ¹Ì·¡ÀÇ ¹öÀüÀ» À§ÇÑ ¹®Á¦¸¦ Ãß°¡Çß´Ù. 1.1.6. v1.7 Buzzit À¯Æ¿¸®Æ¼°¡ Ãß°¡µÇ¾ú´Ù. Gnu tar¿¡ ´ëÇÑ ÆÐÄ¡¸¦ °íÃÆ´Ù. 1.1.7. v1.6 TenThumbsÀÇ Netscape enabler°¡ Ãß°¡µÇ¾ú´Ù. ¶ÇÇÑ ±×ÀÇ Á¦¾ÈÀ¸·Î lesspipe.sh¸¦ º¯°æÇß´Ù. Áö±Ýº¸´Ù ÈǸ¢ÇÏ°Ô ÀÛµ¿ÇÒ °ÍÀÌ´Ù. 1.1.8. v1.5 Arnaud LaunayÀÇ ÇÁ¶û½º¾î ¹ø¿ª, ±×¸®°í ±×ÀÇ wu-ftpd ÆÄÀÏÀÌ Ãß°¡µÇ¾ú´Ù. 1.1.9. v1.4 Tetsu IsajiÀÇ ÀϺ» ¹ø¿ªÀÌ Ãß°¡µÇ¾ú´Ù. 1.1.10. v1.3 Ulrik DickowÀÇ 19.30¿Í ´õ ³ôÀº ¼öÁØÀÇ .emacs°¡ Ãß°¡µÇ¾ú´Ù. (¶ÇÇÑ ±×ÀÇ Á¦¾ÈÀ¸·Î emacsÀÇ jka-compr.elÆÐÄ¡°¡ Á¤Á¤µÇ¾ú´Ù. ÀÌ·±! Bzip2ÀÇ Ç÷¡±×°¡ ¾ÆÁ÷(?) ¾ø±º.) 1.1.11. v1.2 EmacsÀÇ ÆÐÄ¡°¡ º¯°æµÇ¾î¼­ ÀÚµ¿ÀûÀ¸·Î .bz2 ÆÄÀϵéÀ» ÀνÄÇÑ´Ù. 1.1.12. v1.1 EmacsÀÇ ÆÐÄ¡°¡ Ãß°¡µÇ¾ú´Ù. 1.1.13. v1.0 ¶ó¿îµå 1. 2. Bzip2 ¾ò±â Bzip2ÀÇ È¨ÆäÀÌÁö´Â ¿µ±¹ Ȩ »çÀÌÆ®ÀÎ >¿¡ ÀÖ°í. ¹Ì±¹ ¹Ì·¯»çÀÌÆ®´Â > ¿¡ ÀÖ´Ù. 2.1. ´ç½ÅÀÇ ¾ð¾îÀÇ bzip2-HOWTO ÇÁ¶û½ºÀεéÀº ¾Æ¸¶ Arnaud LaunayÀÇ ÇÁ¶û½º¾î ¹®¼­¸¦ Âü°íÇϱ⸦ ¹Ù¶ö °ÍÀÌ´Ù. À¥ ¹öÀüÀº > ¿¡ ÀÖ°í, ftp´Â ftp.lip6.fr/pub/linux/french/docs/HOWTO/mini/Bzip2.gz ¿©±â ÀÖ´Ù. Arnaud¿Í ÀüÀÚ¸ÞÀÏ·Î ¿¬¶ôÇÒ ¼ö ÀÖ´Ù. ¸ÞÀÏ ÁÖ¼Ò´Â > ÀÌ´Ù. ÀϺ»ÀεéÀº ¾Æ¸¶ Tetsu IsajiÀÇ ÀϺ»¾î ¹®¼­¸¦ ÂüÁ¶Çϱ⸦ ¹Ù¶ö °ÍÀÌ´Ù. ¹®¼­´Â > ¿¡ ÀÖ´Ù. IsajiÀÇ È¨ÆäÀÌÁö >¿¡¼­ ¿¬¶ôÇÒ¼ö ÀÖ°í, ȤÀº ÀüÀÚ¸ÞÀÏ·Î ÇÒ ¼ö ÀÖ´Ù. ¸ÞÀÏ ÁÖ¼Ò´Â > ÀÌ´Ù. ½º¿þµ§ÀεéÀº ¾Æ¸¶ Linus AkerlundÀÇ ½º¿þµ§¾î ¹®¼­¸¦ ÂüÁ¶Çϱ⸦ ¹Ù¶ö °ÍÀÌ ´Ù. ¹®¼­´Â > ¿¡ ÀÖ´Ù. Linus¿Í ÀüÀÚ¸ÞÀÏ·Î ¿¬¶ôÇÒ¼ö ÀÖ´Ù. ¸ÞÀÏ ÁÖ¼Ò´Â > ÀÌ´Ù. 2.2. ÄÄÆÄÀÏµÈ bzip2 ¹ÙÀ̳ʸ® ¾ò±â Ȩ »çÀÌÆ®¸¦ ºÁ¶ó. 2.3. Bzip2 ¼Ò½º ¾ò±â °ø½ÄÀûÀÎ »çÀÌÆ®¿¡ ÀÖ´Ù (``Bzip2 ¾ò±â'' ¸¦ ºÁ¶ó. 2.4. ´ç½ÅÀÇ ÄÄÇ»ÅÍ·Î bzip2 ÄÄÆÄÀÏÇϱ⠸¸¾à ´ç½ÅÀÌ gcc 2.7.*À» °¡Áö°í ÀÖÀ¸¸é, ´ÙÀ½ ¶óÀÎÀ» ¹Ù²ã¶ó CFLAGS = -O3 -fomit-frame-pointer -funroll-loops À¸·Î CFLAGS = -O2 -fomit-frame-pointer -O3 °ú -O2¸¦ ¹Ù²Ù°í -funroll-loops¸¦ ³Ö´Â´Ù. Ä¿³Î ÄÄÆÄÀÏÇÒ¶§ ´ç½ÅÀº ¾Æ ¸¶ ¾î¶°ÇÑ -m* Ç÷¡±×¸¦(¿¹¸¦µé¾î, -m486) Ãß°¡ÇÏ±æ ¿øÇÒ °ÍÀÌ´Ù. -funroll-loops¸¦ ÇÇÇÏ´Â °ÍÀº Á¦ÀÏ Áß¿äÇÑ ºÎºÐÀÌ°í, gcc 2.7ÀÇ À߸øµÈ ÄÚ µå¸¦ »ý¼ºÇÏ´Â ¸¹Àº ¿øÀÎÀÌ µÇ°í, gcc 2.7ÀÇ Äڵ尡 ´õ ´À¸®°í ´õ Ä¿Áö±â ¶§¹®ÀÌ´Ù. ´Ù¸¥ ÄÄÆÄÀÏ·¯µé (lcc, egcs, gcc 2.8.x)À» À§ÇØ µðÆúÆ® CFLAGS °¡ ÁÁ´Ù. ±× ÈÄ, README´ë·Î ¹Ù·Î ±×°ÍÀ» ¸¸µé°í ¼³Ä¡Çضó. 3. Bzip2¸¦ ´Üµ¶À¸·Î ¾²±â ÁÁÀº ¸Þ´º¾ó ÆäÀÌÁö¸¦ ÀоîºÁ¶ó :) 4. Bzip2¸¦ tar°ú °°ÀÌ ¾²±â ¹Ù²Ù¾î ¸»Çϸé bzip2¸¦ tar°ú °°ÀÌ ¾²´Â ¼¼°¡Áö ¹æ¹ýÀÌ ¹Ø¿¡ ¸®½ºÆ® µÈ´Ù. 4.1. °¡Àå ½¬¿î ¼³Ä¡: ÀÌ ¹æ¹ýÀº ÀüÇô ¼³Ä¡°¡ ÇÊ¿äÇÏÁö ¾Ê´Ù. ÇöÀç µð·ºÅ丮ÀÇ foo.tar.bz2ó·³ tar°ú bzip2·Î ¾ÐÃàµÈ °ÍÀ» Ç®·Á¸é /path/to/bzip2 -cd foo.tar.bz2 | tar xf - ¶Ç´Â tar --use-compress-prog=bzip2 xf foo.tar.bz2 ÀÌ ÀÛ¾÷Àº Á¾Á¾ PITA °¡ µÉ ¼öµµ ÀÖ´Ù. 4.2. root Ư±Ç ¾øÀÌ ½±°Ô ¼³Ä¡ÇÏ°í »ç¿ëÇϱâ: ÆÁ¿¡ ´ëÇØ Leonard Jean-Marc >¿¡°Ô °¨»çÇÑ´Ù. csh¿Í bash ±¸º°ÀÌ »ý±â´Â °Í¿¡ ´ëÇØ Alessandro Rubini > ¿¡°Ô ¿ª½Ã °¨»çÇÑ´Ù. ´ç½ÅÀÇ .bashrc, ÀÌ°Í°ú °°Àº ¶óÀÎÀ» ³Ö¾î¶ó: alias btar='tar --use-compress-program /usr/local/bin/bzip2 ' ´ç½ÅÀÇ .tcshrc, ¶Ç´Â .cshrc, ÀÌ°Í°ú À¯»çÇÏ°Ô º¸ÀÌ´Â ¶óÀÎ: alias btar 'tar --use-compress-program /usr/local/bin/bzip2' 4.3. ·çÆ®ÀÇ Á¢±ÙÀÌ ÇÊ¿äÇÏÁö¸¸ ½±°Ô »ç¿ëÇϱâ. ´ç½ÅÀÇ tarÀ» GNUÀÇ °¡Àå »õ·Î¿î ¹öÀüÀ¸·Î °»½ÅÇضó, ÇöÀç´Â 1.13.10ÀÌ´Ù. ±×°ÍÀº GNUÀÇ ftp »çÀÌÆ® alpha.gnu.org/gnu/tar/ ¿¡¼­ ãÀ» ¼ö ÀÖ°í ȤÀº ¾î¶² ¹Ì·¯. 5. Bzip2¸¦ less¿Í °°ÀÌ ¾²±â bzip2À¸·Î ¾ÐÃàµÈ ÆÄÀÏÀ» bunzip2 ¾øÀÌ less¸¦ ÀÌ¿ëÇÏ·Á¸é lesspipr.sh (man less) ÆÄÀÏÀ» ´ÙÀ½°ú °°ÀÌ ¸¸µé¾î¶ó: ______________________________________________________________________ #!/bin/sh # This is a preprocessor for 'less'. It is used when this environment # variable is set: LESSOPEN="|lesspipe.sh %s" case "$1" in *.tar) tar tvvf $1 2>/dev/null ;; # View contents of various tar'd files *.tgz) tar tzvvf $1 2>/dev/null ;; # This one work for the unmodified version of tar: *.tar.bz2) bzip2 -cd $1 $1 2>/dev/null | tar tvvf - ;; #This one works with the patched version of tar: # *.tar.bz2) tyvvf $1 2>/dev/null ;; *.tar.gz) tar tzvvf $1 2>/dev/null ;; *.tar.Z) tar tzvvf $1 2>/dev/null ;; *.tar.z) tar tzvvf $1 2>/dev/null ;; *.bz2) bzip2 -dc $1 2>/dev/null ;; # View compressed files correctly *.Z) gzip -dc $1 2>/dev/null ;; *.z) gzip -dc $1 2>/dev/null ;; *.gz) gzip -dc $1 2>/dev/null ;; *.zip) unzip -l $1 2>/dev/null ;; *.1|*.2|*.3|*.4|*.5|*.6|*.7|*.8|*.9|*.n|*.man) FILE=`file -L $1` ; # groff src FILE=`echo $FILE | cut -d ' ' -f 2` if [ "$FILE" = "troff" ]; then groff -s -p -t -e -Tascii -mandoc $1 fi ;; *) cat $1 2>/dev/null ;; # *) FILE=`file -L $1` ; # Check to see if binary, if so -- view with 'strings' # FILE1=`echo $FILE | cut -d ' ' -f 2` # FILE2=`echo $FILE | cut -d ' ' -f 3` # if [ "$FILE1" = "Linux/i386" -o "$FILE2" = "Linux/i386" \ # -o "$FILE1" = "ELF" -o "$FILE2" = "ELF" ]; then # strings $1 # fi ;; esac ______________________________________________________________________ 6. Bzip2¸¦ emacs¿Í °°ÀÌ ¾²±â 6.1. ¸ðµÎ¸¦ À§ÇØ emacs ¹Ù²Ù±â: ³ª´Â ÀÚµ¿¾ÐÃà¸ðµå¸¦ Ãß°¡ÇÑ jka-compr.el ÆÐÄ¡¿¡ µû¶ó ½è´Ù. ºÎÀμ­: ³ª´Â emacs-20.0¿¡¼­¸¸ Å×½ºÆ®¸¦ ÇغôÙ, ±×·¯³ª ´Ù¸¥ ¹öÀü¿¡ ºñ½Á ÇÏ°Ô Á¢±ÙÇÏÁö ¸øÇÑ´Ù°í ¹ÏÀ» ÀÌÀ¯°¡ ¾ø´Ù. ÀÌ °ÍÀ» ½á¶ó, 1. emacs-20.2/lisp ¼Ò½º µð·ºÅ丮¿¡ °¡¶ó (´ç½ÅÀÌ tarÀ» Ǭ °÷) 2. jka-compr.el.diff ºÎ¸£´Â ÆÄÀÏÀÇ ¾Æ·¡¿¡ ÆÐÄ¡¸¦ ³õ¾Æ¶ó (±× °ÍÀº Àú ÆÄÀÏ ¿¡ ´Üµ¶À¸·Î ÀÖ¾î¾ßÇÑ´Ù ;). 3. Çضó patch < jka-compr.el.diff 4. Emacs¸¦ ½ÃÀÛÇضó, ±×¸®°í Çضó M-x byte-compile-file jka-compr.el 5. Emacs¸¦ Á¾·áÇضó. 6. ´ç½ÅÀÇ ÃÖÃÊÀÇ jka-compr.elc¸¦ ¹ö±×ÀÇ ÄÉÀ̽º¾ÈÀÇ ¾ÈÀüÇÑ °÷À¸·Î ¿Å°Ü¶ó. 7. »õ·Î¿î jka-compr.elc¿Í ±× °ÍÀ» ¹Ù²ã¶ó. 8. Áñ°Ü¶ó! ______________________________________________________________________ --- jka-compr.el Sat Jul 26 17:02:39 1997 +++ jka-compr.el.new Thu Feb 5 17:44:35 1998 @@ -44,7 +44,7 @@ ;; The variable, jka-compr-compression-info-list can be used to ;; customize jka-compr to work with other compression programs. ;; The default value of this variable allows jka-compr to work with -;; Unix compress and gzip. +;; Unix compress and gzip. David Fetter added bzip2 support :) ;; ;; If you are concerned about the stderr output of gzip and other ;; compression/decompression programs showing up in your buffers, you @@ -121,7 +121,9 @@ ;;; I have this defined so that .Z files are assumed to be in unix -;;; compress format; and .gz files, in gzip format. +;;; compress format; and .gz files, in gzip format, and .bz2 files, +;;; in the snappy new bzip2 format from . +;;; Keep up the good work, people! (defcustom jka-compr-compression-info-list ;;[regexp ;; compr-message compr-prog compr-args @@ -131,6 +133,10 @@ "compressing" "compress" ("-c") "uncompressing" "uncompress" ("-c") nil t] + ["\\.bz2\\'" + "bzip2ing" "bzip2" ("") + "bunzip2ing" "bzip2" ("-d") + nil t] ["\\.tgz\\'" "zipping" "gzip" ("-c" "-q") "unzipping" "gzip" ("-c" "-q" "-d") ______________________________________________________________________ 6.2. ÇÑ »ç¶÷À» À§ÇØ emacs ¹Ù²Ù±â: Kampsax Technology¿¡ ÀÖ´Â ½Ã½ºÅÛ ÇÁ·Î±×·¡¸ÓÀÎ Ulrik Dickow, ukd@kampsax.dk ¿¡°Ô ÀÌ°Í¿¡ °üÇØ °¨»çÇÑ´Ù: ´ç½ÅÀÌ ½Ã½ºÅÛ°ü¸®ÀÚ°¡ ¾Æ´Ò¶§ ±×°ÍÀ» ¸¸µé¸é bzip2¸¦ ÀÚµ¿ÀûÀ¸·Î ¾µ ¼ö ÀÖ´Ù. ´ç½ÅÀÇ .emacs ÆÄÀÏ´ÙÀ½¿¡ Áö±Ý Ãß°¡Çضó. ______________________________________________________________________ ;; Automatic (un)compression on loading/saving files (gzip(1) and similar) ;; We start it in the off state, so that bzip2(1) support can be added. ;; Code thrown together by Ulrik Dickow for ~/.emacs with Emacs 19.34. ;; Should work with many older and newer Emacsen too. No warranty though. ;; (if (fboundp 'auto-compression-mode) ; Emacs 19.30+ (auto-compression-mode 0) (require 'jka-compr) (toggle-auto-compression 0)) ;; Now add bzip2 support and turn auto compression back on. (add-to-list 'jka-compr-compression-info-list ["\\.bz2\\(~\\|\\.~[0-9]+~\\)?\\'" "zipping" "bzip2" () "unzipping" "bzip2" ("-d") nil t]) (toggle-auto-compression 1 t) ______________________________________________________________________ 7. Bzip2¸¦ wu-ftpd¿Í °°ÀÌ ¾²±â Arnaud Launay¿¡°Ô ÀÌ bandwidth ¼¼À̹ö¿¡ ´ëÇØ °¨»çÇÑ´Ù. ÀÌ°ÍÀº bzip2 ¾ÐÃà°ú ¾ÐÃàÇØÁ¦¸¦ /etc/ftpconversions ¿¡ ÇÑ´Ù. °æ·Î¸¦ Á¤È®È÷ ÇØ¾ß ÇÒ °ÍÀ» ¸í½ÉÇ϶ó. ______________________________________________________________________ :.Z: : :/bin/compress -d -c %s:T_REG|T_ASCII:O_UNCOMPRESS:UNCOMPRESS : : :.Z:/bin/compress -c %s:T_REG:O_COMPRESS:COMPRESS :.gz: : :/bin/gzip -cd %s:T_REG|T_ASCII:O_UNCOMPRESS:GUNZIP : : :.gz:/bin/gzip -9 -c %s:T_REG:O_COMPRESS:GZIP :.bz2: : :/bin/bzip2 -cd %s:T_REG|T_ASCII:O_UNCOMPRESS:BUNZIP2 : : :.bz2:/bin/bzip2 -9 -c %s:T_REG:O_COMPRESS:BZIP2 : : :.tar:/bin/tar -c -f - %s:T_REG|T_DIR:O_TAR:TAR : : :.tar.Z:/bin/tar -c -Z -f - %s:T_REG|T_DIR:O_COMPRESS|O_TAR:TAR+COMPRESS : : :.tar.gz:/bin/tar -c -z -f - %s:T_REG|T_DIR:O_COMPRESS|O_TAR:TAR+GZIP : : :.tar.bz2:/bin/tar -c -y -f - %s:T_REG|T_DIR:O_COMPRESS|O_TAR:TAR+BZIP2 ______________________________________________________________________ 8. Bzip2¸¦ grep¿Í °°ÀÌ ¾²±â ³»°¡ bgrepÀ» ½ÇÇàÇÒ ¶§¿¡´Â linux ¿Í °°ÀÌ ¿À´Â zgrep¿¡ »ç¼ÒÇÑ ¼öÁ¤ÀÌ °¡ÇØÁø´Ù. ´ç½ÅÀº bunzip2 ¸í·ÉÀÇ »ç¿ë ¾øÀ̵µ ÀÏ´ÜÀº grepÀ» »ç¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ______________________________________________________________________ #!/bin/sh # bgrep -- a wrapper around a grep program that decompresses files as needed PATH="/usr/bin:$PATH"; export PATH prog=`echo $0 | sed 's|.*/||'` case "$prog" in *egrep) grep=${EGREP-egrep} ;; *fgrep) grep=${FGREP-fgrep} ;; *) grep=${GREP-grep} ;; esac pat="" while test $# -ne 0; do case "$1" in -e | -f) opt="$opt $1"; shift; pat="$1" if test "$grep" = grep; then # grep is buggy with -e on SVR4 grep=egrep fi;; -*) opt="$opt $1";; *) if test -z "$pat"; then pat="$1" else break; fi;; esac shift done if test -z "$pat"; then echo "grep through bzip2 files" echo "usage: $prog [grep_options] pattern [files]" exit 1 fi list=0 silent=0 op=`echo "$opt" | sed -e 's/ //g' -e 's/-//g'` case "$op" in *l*) list=1 esac case "$op" in *h*) silent=1 esac if test $# -eq 0; then bzip2 -cd | $grep $opt "$pat" exit $? fi res=0 for i do if test $list -eq 1; then bzip2 -cdfq "$i" | $grep $opt "$pat" > /dev/null && echo $i r=$? elif test $# -eq 1 -o $silent -eq 1; then bzip2 -cd "$i" | $grep $opt "$pat" r=$? else bzip2 -cd "$i" | $grep $opt "$pat" | sed "s|^|${i}:|" r=$? fi test "$r" -ne 0 && res="$r" done exit $res ______________________________________________________________________ 9. Bzip2¸¦ XÀÇ ³Ý½ºÄÉÀÌÇÁ°ú °°ÀÌ ¾²±â.