wok view lzma/stuff/lzma @ rev 3923

Update: wget (BusyBox add/remove compatibility)
author Matthew Sheets <rcx@zoominternet.net>
date Tue Aug 18 20:11:38 2009 +0000 (2009-08-18)
parents
children 1c6fa8e91b97
line source
1 #!/bin/sh
3 case "$1" in
4 d|e|b) exec /usr/bin/lzma-alone $@;;
5 esac
7 [ -x /usr/bin/lzmap ] && exec /usr/bin/lzmap $@
9 files=""
10 outfilter=''
11 suffix='lzma'
12 opts='-a1 -d23 -fb128 -mfbt4 -lc3 -lp0 -pb2'
13 command='e'
14 keep=''
16 while [ -n "$1" ]; do
17 case "$1" in
18 -c|--stdout|--to-stdout) outfilter='s/.*/-so/'; keep='y';;
19 -S|--suffix) suffix="$2"; shift;;
20 -d|--decompress|--uncompress) command='d';;
21 -k|--keep) keep='y';;
22 -1|--fast) opts='-a0 -d16 -fb64 -mfhc4 -lc3 -lp0 -pb2';;
23 -2) opts='-a1 -d20 -fb64 -mfbt4 -lc3 -lp0 -pb2';;
24 -3) opts='-a1 -d19 -fb64 -mfbt4 -lc3 -lp0 -pb2';;
25 -4) opts='-a1 -d20 -fb128 -mfbt4 -lc3 -lp0 -pb2';;
26 -5) opts='-a1 -d21 -fb128 -mfbt4 -lc3 -lp0 -pb2';;
27 -6) opts='-a1 -d22 -fb128 -mfbt4 -lc3 -lp0 -pb2';;
28 -7) opts='-a1 -d23 -fb128 -mfbt4 -lc3 -lp0 -pb2';;
29 -8) opts='-a1 -d24 -fb255 -mfbt4 -lc3 -lp0 -pb2';;
30 -9|--best) opts='-a1 -d25 -fb255 -mfhc4 -lc3 -lp0 -pb2';;
31 -*);;
32 *) files="$files $1";;
33 esac
34 shift
35 done
36 [ -z "$outfilter" ] && if [ -n "$files" ]; then
37 if [ "$command" == "e" ]; then
38 outfilter="s/\$/.$suffix/"
39 else
40 outfilter="s/.$suffix\$//"
41 fi
42 else
43 files='-si'; outfilter='s/.*/-so/'; keep='y';
44 fi
45 for i in $files ; do
46 /usr/bin/lzma-alone $command $i $(echo $i | sed $outfilter) $opts || exit $?
47 [ -n "$keep" ] || rm -f $i
48 done