Inline substitui comentários em arquivos recursivamente

1

Eu tentei usar a ferramenta cloc com o parâmetro --strip-comments , que está removendo corretamente os comentários de todos os arquivos recursivamente, com 2 problemas:

  • não é possível fazer isso "no local"
  • os arquivos resultantes são todos copiados no diretório do qual eu executo o comando, independentemente de onde seu local original era

O comando que eu executei é

find . -name '*.php' | xargs cloc --strip-comments=BAK

Como posso fazer isso na edição local dos arquivos ou canalizá-lo para algo para mv o .BAK para substituir o original?

    
por WP2Static.com 25.06.2018 / 13:59

1 resposta

1

Observar algumas outras questões levou-me a um pequeno script que resolve o problema:

#!/bin/bash

shopt -s globstar
for f in **/*.php; do
  cloc --strip-comments=BAK --original-dir "${f%.*}.php"
  mv "${f%.*}.php.BAK" "${f%.*}.php"
done

Isso sem dúvida pode ser otimizado ainda mais.

    
por 25.06.2018 / 14:14