Se puoi elaborare i file in bash
, questo one-liner decomprimerà tutto il testo:
unzip -qc "$1" ppt/slides/slide*.xml | grep -oP '(?<=\<a:t\>).*?(?=\</a:t\>)'
Basta passargli il file pptx come $1
, e scriverà il testo nel file $2
. Il contenuto di ogni diapositiva non verrà visualizzato in ordine di presentazione e non ci saranno etichette o altro, quindi avrai bisogno di qualche riga in più di script e di una directory temporanea per ottenere un elenco più leggibile.
Dato che hai installato Abiword, puoi semplicemente creare prima un PDF
libreoffice --headless --convert-to pdf filename.pptx
E poi usa abiword per convertire il pdf in txt
abiword --to=txt filename.pdf