xref: /plan9/rc/bin/doc2txt (revision 3ff48bf5ed603850fcd251ddf13025d23d693782)
17dd7cddfSDavid du Colombier#!/bin/rc
27dd7cddfSDavid du Colombier
37dd7cddfSDavid du Colombierrfork en
47dd7cddfSDavid du Colombier
57dd7cddfSDavid du Colombierif(! ~ $#* 0 1) {
67dd7cddfSDavid du Colombier	echo 'Usage: doc2txt [file.doc]' >[1=2]
77dd7cddfSDavid du Colombier	exit usage
87dd7cddfSDavid du Colombier}
97dd7cddfSDavid du Colombier
107dd7cddfSDavid du Colombierswitch($#*){
117dd7cddfSDavid du Colombiercase 0
127dd7cddfSDavid du Colombier	cat >/tmp/doc2txt.$pid
137dd7cddfSDavid du Colombier	file=/tmp/doc2txt.$pid
147dd7cddfSDavid du Colombiercase 1
157dd7cddfSDavid du Colombier	file=$1
167dd7cddfSDavid du Colombier}
177dd7cddfSDavid du Colombieraux/olefs $file || {
187dd7cddfSDavid du Colombier	echo 'doc2txt: couldn''t mount word document' >[1=2]
197dd7cddfSDavid du Colombier	rm -f /tmp/doc2txt.$pid
207dd7cddfSDavid du Colombier	exit word
217dd7cddfSDavid du Colombier}
227dd7cddfSDavid du Colombier
237dd7cddfSDavid du Colombierif(! test -f /mnt/doc/WordDocument) {
247dd7cddfSDavid du Colombier	echo 'doc2txt: is an msoffice doc but not a word document' >[1=2]
257dd7cddfSDavid du Colombier	rm -f /tmp/doc2txt.$pid
267dd7cddfSDavid du Colombier	exit worddoc
277dd7cddfSDavid du Colombier}
287dd7cddfSDavid du Colombier
29*3ff48bf5SDavid du Colombieraux/mswordstrings /mnt/doc/WordDocument | tcs -f microsoft -t utf |fmt  | uniq
307dd7cddfSDavid du Colombierunmount /mnt/doc
317dd7cddfSDavid du Colombierrm -f /tmp/doc2txt.$pid
32