catdoc
parece funcionar recursivamente para .doc
arquivos em 16.04: link
Não há menção a .docx
, então você precisa descobrir isso sozinho.
Para os arquivos .ods
ou .odt
, você pode ter o seguinte script de cortesia kaibob @ ubuntuforums.org :
#!/bin/bash
find . -type f -name "*.od*" | while read i ; do
[ "" ] || { echo "You forgot search string!" ; exit 1 ; }
unzip -ca "$i" 2>/dev/null | grep -iq "$*"
if [ $? -eq 0 ] ; then
echo "string found in $i" | nl
fi
done
Digamos que você o chame de "libre-search" e o tenha tornado executável.
Em seguida, a execução de libre-search your_string
deve listar os arquivos que contêm your_string .
unzip -ca "$i" 2>/dev/null
cuida do conteúdo indesejado.
grep -iq
torna a pesquisa insensível a maiúsculas e minúsculas.
nl
numera a saída.