Como removo comentários de arquivos?

1

Eu tenho um diretório com muitos arquivos. Eu quero remover todos os comentários desses arquivos. Como eu faço isso?

Os arquivos são assim (tudo o que está entre / * e * / são comentário):

/* */ import java.util.ArrayList;

    
por wb9688 12.07.2015 / 15:40

2 respostas

2

Copie seus arquivos para outro lugar primeiro. Se, como no seu exemplo, o comentário estiver em uma linha, faça

for file in *.java
do 
   sed -i 's|/\*[^/]*\*/||g' "$file"
done
    
por meuh 12.07.2015 / 15:50
1

Como eles estão sempre em uma única linha e várias ocorrências na mesma linha parecem ser excluídas:

for f in *.java; do sed -i 's/\/\*[^*]*\*\/ \?//' "$f"; done

No entanto, no caso de várias ocorrências na mesma linha:

for f in *.java; do sed 's/\/\*[^*]*\*\/ \?//g' "$f"; done
    
por kos 12.07.2015 / 16:07