Execute o HTML Tidy em lote no Mac OS X?

4

Eu quero executar o HTML Tidy em um grande número de arquivos localizados em pastas e subpastas. Eu posso usar o seguinte comando no Terminal para executá-lo em um único arquivo:

tidy -f errors.txt -m -utf8 -i sample.html

Mas como posso executá-lo especificando uma pasta raiz e fazer com que ela passe por cada um dos arquivos html lá e faça o mesmo em cada subpasta?

    
por Anders Svensson 07.01.2012 / 11:39

1 resposta

9

Use find .

find /path/to/folder -type f -name "*.html" -exec tidy -f errors.txt -m -utf8 -i {} \;

Isso executará tidy em todos os arquivos .html na pasta especificada:

  • -type f combina todos os arquivos (ao contrário de pastas, links simbólicos, etc.)
  • -name "*.html" corresponde a todos os arquivos com .html extensão
  • -exec tidy -f errors.txt -m -utf8 -i {} \; executa a linha de comandos tidy especificada, com o caminho completo do arquivo inserido em {} . \; é requerido por find para terminar este comando.
por 07.01.2012 / 11:43