19a747e4fSDavid du Colombier#!/bin/rc 2*39dc1420SDavid du Colombier# ups - look up a UPS tracking number 3*39dc1420SDavid du Colombierrfork en 49800bf03SDavid du Colombier 59a747e4fSDavid du Colombierif(! ~ $#* 1) { 69a747e4fSDavid du Colombier echo usage: ups 1ZA41W190338680961 >[1=2] 79a747e4fSDavid du Colombier exit usage 89a747e4fSDavid du Colombier} 99a747e4fSDavid du Colombier 10*39dc1420SDavid du Colombierhget 'http://wwwapps.ups.com/WebTracking/processInputRequest?tracknum='^$1^ \ 119a747e4fSDavid du Colombier '&TypeOfInquiryNumber=T' >/tmp/ups.1 129a747e4fSDavid du Colombier 13*39dc1420SDavid du Colombiersed 's/<[Tt][Dd]>/& «TD»/g; s/<[Tt][Rr]>/&<td> «TR» /g' /tmp/ups.1 | 14*39dc1420SDavid du Colombier htmlfmt >/tmp/ups.2 15*39dc1420SDavid du Colombiersam -d /tmp/ups.2 >[2] /dev/null <<'!' 16feec1580SDavid du Colombier/^Tracking results.*/p 17d9306527SDavid du Colombier.,$d 18*39dc1420SDavid du Colombier/Help/d 19feec1580SDavid du Colombier1,.d 20*39dc1420SDavid du Colombier$-2,$d 21*39dc1420SDavid du Colombier/Status:/+1 22*39dc1420SDavid du Colombier.,/«TR»/-2d 23feec1580SDavid du Colombier,s/\n/ /g 24feec1580SDavid du Colombier,s/«TR»/\n/g 25feec1580SDavid du Colombier,s/«TD»/ /g 26feec1580SDavid du Colombier,s/ * */ /g 27feec1580SDavid du Colombier,s/^[ ]*//g 28feec1580SDavid du Colombier,s/[ ]*$//g 29feec1580SDavid du Colombier,s/\n\n+/\n\n/g 30d9306527SDavid du Colombier,p 31d9306527SDavid du Colombier! 32*39dc1420SDavid du Colombierecho 33