1#!/bin/sh 2 3# Speed up the log resolving by running several instances of 4# webresolve in parallel. 5# Run like so: 6# 7# splitwr logfile > logfile.resolved 8 9# Set this to something sensible 10PROCESSES=20 11 12test -n "$1" || exit 13test -s "$1" || exit 14 15LINES=`wc "$1" | awk '{print $1}'` 16XX=`echo "$LINES/($PROCESSES-1)" | bc` 17 18rm -rf x.* r.* lock 19mkdir lock 20 21split -$XX "$1" x. 22 23for f in x.*; do 24 (touch lock/$f 25 webresolve < $f > r.$f 26 rm $f 27 rm lock/$f 28 rmdir lock ) 2> /dev/null & 29done 30 31# Now wait for all webresolvers to finish 32while test -d lock; do 33 sleep 10 34done 35 36for f in r.*; do 37 cat $f 38 rm $f 39done 40 41