Script per rimuovere il text da file .js

Devo scrivere uno script bash per rimuovere un text da qualsiasi file .js del mio progetto web. Questi sono gli elementi da eliminare:

 if ( Utils.DEBUGGING ) /* ... */ ; if ( Utils.DEBUGGING ) {/* ... */} if ( Utils.DEBUGGING ) { /* ... */ } if (Utils.DEBUGGING) /* ... */ ; if (Utils.DEBUGGING) {/* ... */} if (Utils.DEBUGGING) { /* ... */ } if (Utils.DEBUGGING ) /* ... */ ; if (Utils.DEBUGGING ) {/* ... */} if (Utils.DEBUGGING ) { /* ... */ } if ( Utils.DEBUGGING) /* ... */ ; if ( Utils.DEBUGGING) {/* ... */} if ( Utils.DEBUGGING) { /* ... */ } 

Qualche idea su come farlo?

Ho iniziato così:

 #!/bin/bash for i in *.js do # ... done 

Grazie

Qualsiasi approccio basato su regex sta andando a lottare se le cose all'interno dei blocchi contengono dei blocchi stessi. Suppongo che tu utilizzi * * * * * come segnaposto per il codice reale, ma indovino che in realtà i tuoi esempi siano più complessi.

Vale la pena sottolineare che se la bandiera è impostata su false, allora il codice verrà eseguito molto poco, dal momento che il compilatore può eseguire l'eliminazione dei codici errati (DCE).

Detto questo, se si vuole definitivamente sbarazzarsi di queste parti del codice, un'opzione sarebbe quella di utilizzare uno strumento come Closure Compiler . Puoi utilizzarla in modo interattivo online, tramite un'API o come eseguibile autonomo.

Se hai scelto di andare con l'opzione standalone, il tuo codice potrebbe essere qualcosa di simile:

 for file in path/to/input/*.js; do output_file=path/to/output/"$file" java -jar compiler.jar -O SIMPLE --js_output_file "$output_file" "$file" done