感谢 Arnaud Launay 这则节省频宽的秘诀 。下面的内容应该是放到 /etc/ftpconversions □面来达成以 bzip2 来做即时压缩及解压缩 。请确认路径 (像 /bin/compress) 要正确 。
:.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 做个小更改而已 。你可以使用它来 grep,而不需先 bunzip2 档案 。
#!/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 下的 Netscape 来使用 。
tenthumbs@cybernex.net 说:
我找到一个可以让 Linux Netscape 来使用 bzip2 做为 Content-Encoding 就如同它使用 gzip 一样 。把下面的东东加到 $HOME/.Xdefaults 或是 $HOME/.Xresources
我使用 -s 选项,是因为选择放弃解压缩的速度来换得 RAM 的占用 。你可以把它设成你自己要的 。
Netscape*encodingFilters:
x-compress :: .Z : uncompress -cn
compress :: .Z : uncompress -cn
x-gzip :: .z,.gz : gzip -cdqn
gzip :: .z,.gz : gzip -cdqn
x-bzip2:: .bz2 : bzip2 -ds n
--------------------------------------------------------------------------------
推荐阅读
- Linux 核心--17.关于Linux的Web与FTP站点 --18.作者简介
- Automount mini-Howto 文件系统自动挂载程序
- Linux中IP隧道的分析与建议
- 汤姆索亚历险记作者 汤姆索亚历险记作者是谁
- 资深Linux程序员的开发经验谈
- 儒林外史作者是谁 儒林外史是谁写的
- 白鹅一文中作者抓住鹅的什么特点
- 三国演义作者是谁 三国演义的作者是谁
- 孙权劝学选自什么著作 孙权劝学选自什么著作作者
- 赵州桥作者是谁 小学课文赵州桥作者是谁
