LibreOffice Writer - Carregue o arquivo da linha de comando (CLI) e salve-o

LibreOffice Writer - Carregue o arquivo da linha de comando (CLI) e salve-o

Percebi que o LibreOffice Writer tem uma boa qualidade: ao carregar um arquivo .docx, e salvá-lo imediatamente, alguém a estrutura do arquivo salvo é um pouco diferente do arquivo original - no bom sentido - é como resolver alguma estrutura .docx problemas, etc (o que me permite posteriormente processá-lo melhor com o Apache POI).

Eu gostaria de usá-lo simplesmente para corrigir arquivos .docx, carregando-os e salvando-os imediatamente - seja na linha de comando ou de alguma forma, invocando diretamente as funções do Writer.

Gostaria de receber algumas dicas para a solução.

Responder1

Você pode usar a libreofficeferramenta CLI, ela tem uma --convert-toopção de conversão de arquivos que pode ser usada para converter para o mesmo formato que você desejar. Se você usar isso sem especificar um diretório de saída,substituio arquivo original e você não pode atribuir a ele um nome de arquivo de saída diferente. Contorne isso convertendo o arquivo /tmp/primeiro e movendo-o de volta depois:

libreoffice --convert-to docx --outdir /tmp/ NAME.DOCX && mv /tmp/NAME.DOCX ./NEWNAME.DOCX

Você só precisa alterar as partes em negrito em letras maiúsculas,NAME.DOCXao seu nome de arquivo de entrada eNEWNAME.DOCXpara o nome do arquivo de saída desejado.

Na bashlinha de comando, você pode abreviar para:

libreoffice --convert-to docx --outdir /tmp/ NAME.DOCX && mv !#:4!#:5 ./NEWNAME.!#:2

Isso usabashExpansão da históriapara que você não precise inserir caminhos e nomes de arquivos várias vezes – você só precisa alterarNAME.DOCXao seu nome de arquivo de entrada eNEWNAMEpara o nome do arquivo de saída desejado sem a extensão.

informação relacionada