30 строки
591 B
Bash
30 строки
591 B
Bash
#!/bin/sh -e
|
|
# minimalistic replacement for `run-mailcap --action=cat <file>`
|
|
|
|
if test "$#" != 1 ; then
|
|
echo "Usage: astextplain <file>" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
# XXX output encoding (UTF-8) hardcoded
|
|
case "$1" in
|
|
*.doc | *.DOC | *.dot | *.DOT)
|
|
antiword -m UTF-8 "$1" | sed "s/\^M$//" || cat "$1"
|
|
;;
|
|
*.docx | *.DOCX | *.docm | *.DOCM | *.dotm | *.DOTM)
|
|
docx2txt.pl "$1" -
|
|
;;
|
|
*.pdf | *.PDF)
|
|
pdftotext -layout "$1" -enc UTF-8 - | sed "s/(\^M$)|(^\^L)//"
|
|
;;
|
|
# TODO add rtf support
|
|
*.rtf | *.RTF)
|
|
cat "$1"
|
|
;;
|
|
*)
|
|
echo "E: unsupported filetype $1" 1>&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
exit 0 |