#!/bin/ksh dir="$(dirname "$0")" base="$(basename "$0" -pack.sh)" (cd "$dir/$base" && find . -name '*.jar' | while read j; do find "$(dirname $j)" ! -type d -newer "$j" | while read f in; do (cd "$(dirname $j)/$(basename $j .jar)" && echo zip -u -r -D -q ../"$(basename $j)" * -x '*~' >&2 && zip -u -r -D -q ../"$(basename $j)" * -x '*~' && : #echo zip -d ../"$(basename $j)" $(zipinfo -1 ../"$(basename $j)" '*~') >&2 && #zip -d ../"$(basename $j)" $(zipinfo -1 ../"$(basename $j)" '*~') ) break done find "$(dirname $j)/$(basename $j .jar)" ! -type d done ) > "$dir/$base"-jar.lst j="$dir/$base.xpi" find "$(dirname $j)/$(basename $j .xpi)" ! -type d -newer "$j" | while read f in; do (cd "$(dirname $j)/$(basename $j .xpi)" && echo zip -u -r -D -q ../"$(basename $j)" * -x '*~' -x@../"$dir/$base"-jar.lst >&2 && zip -u -r -D -q ../"$(basename $j)" * -x '*~' -x@../"$dir/$base"-jar.lst && : #echo zip -d ../"$(basename $j)" $(zipinfo -1 ../"$(basename $j)" '*~') >&2 && #zip -d ../"$(basename $j)" $(zipinfo -1 ../"$(basename $j)" '*~') ) break done