Periodically people email me Microsoft Word files which clearly contain
only text. Fortunately, Word is now creating OOXML
.docx files which
contain honest to goodness UTF-8 text (and lots of XML tags). This is a
step up from the
.doc format which as near as I could tell needed
special libraries to penetrate.
.docx files are zip archives. The archived file
contains the text of the document itself and can be extracted with
unzip file.docx word/document.xml.
If you just want to see the text in a .docx file, you can strip out all
XML tags of
word/document.xml, converting the P tag to a new
paragraph. It’s surprisingly legible for every .docx file I’ve seen so
far. The sed command would be
I made a shell script called
docx2txt which contains the unzip command
to pipe to stdout, which is read by sed running that crazy script. It
looks like this:
#! /bin/sh unzip -qc "$1" word/document.xml | sed 's#</w:p>#\n\n#g;s#<[^>]*>##g'
There are other, probably more powerful, docx to text converters on the Internet. The advantage of mine is simplicity, when all you want to do is read the text and move on with your life.