Eu tentei xmlstarlet para processar arquivos .xhtml individuais.
xmlstarlet fo --omit-decl --recover --html file.xhtml
Este comando processa arquivos individuais e imprime a saída apenas no terminal. Como processar vários arquivos em lote e salvar os resultados stdout
como arquivos? (com o mesmo nome, adicionando prefixo ou sufixo para arquivos)
O código abaixo é uma variante ligeiramente modificada do final da minha resposta à sua pergunta anterior sobre o mesmo tópico, utilizando maneiras idênticas de fazer o processamento em lote real.
Se todos os arquivos que você deseja processar corresponderem ao padrão
./*.xhtml
, ou seja, se eles tiverem um.xhtml
sufixo de nome de arquivo e estiverem no diretório atual, você poderá processar todos esses arquivos com qualquer um dos comandos acima usando um simples loop de shell.O comando no loop gera o documento resultante para arquivos com o mesmo nome dos arquivos antigos, mas com um
.new
sufixo de nome de arquivo anexado.Para executar o acima em todos os arquivos XHTML em uma hierarquia de diretórios, ou seja, em um diretório com vários subdiretórios, você pode usar
find
.