Script pour compter des lignes de code
Résolu
zg2pro
-
nicobzz Messages postés 11 Statut Membre -
nicobzz Messages postés 11 Statut Membre -
Slt,
Je voudrais réaliser un script en bash ou tcsh peu importe qui compte les lignes effectives d'un code :
le script doit donc supprimer les lignes comprises entre un /* et un */
supprimer les lignes commencant par //
supprimer les lignes vides puis compter ce qui reste.
Tout cela dans le but d'établir des ratios de productivité (lignes codées à l'heure) sur le développement d'un code.
#! /bin/tcsh
set openComment "\/\*"
set unComment "\*\/"
#pour ne pas melanger commentaires et lignes de code :
tr '$openComment' "\n/*" < $1 | tr '$unComment' "*/\n"
je suis pas tres doue en cette matiere desole, j'ai pas trouvé mieux pour commencer ... et encore meme pas ca marche ca parce que ca enleve les etoiles sans slash, ouais je sais je suis une quiche...
apres evidemment faudrait faire une boucle je pense pour mettre des "//" au debut de toutes les lignes qui sont entre des "/*" et des "*/" puis supprimer tout ça...
bon bin si quelqu'un peut m'aider, je suis sur qu'en plus ca sert toujours ce genre de scripts... j'en serai gré...
Je voudrais réaliser un script en bash ou tcsh peu importe qui compte les lignes effectives d'un code :
le script doit donc supprimer les lignes comprises entre un /* et un */
supprimer les lignes commencant par //
supprimer les lignes vides puis compter ce qui reste.
Tout cela dans le but d'établir des ratios de productivité (lignes codées à l'heure) sur le développement d'un code.
#! /bin/tcsh
set openComment "\/\*"
set unComment "\*\/"
#pour ne pas melanger commentaires et lignes de code :
tr '$openComment' "\n/*" < $1 | tr '$unComment' "*/\n"
je suis pas tres doue en cette matiere desole, j'ai pas trouvé mieux pour commencer ... et encore meme pas ca marche ca parce que ca enleve les etoiles sans slash, ouais je sais je suis une quiche...
apres evidemment faudrait faire une boucle je pense pour mettre des "//" au debut de toutes les lignes qui sont entre des "/*" et des "*/" puis supprimer tout ça...
bon bin si quelqu'un peut m'aider, je suis sur qu'en plus ca sert toujours ce genre de scripts... j'en serai gré...
A voir également:
- Slcnt
- Code ascii - Guide
- Script vidéo youtube - Guide
- Code puk bloqué - Guide
- Code de déverrouillage oublié - Guide
- Code activation windows 10 - Guide
3 réponses
Salut,
Bon alors entendons nous bien ;-))
On doit supprimer :
- les lignes commençant par //
- les lignes entre /* et */ (avec ou sans retour chariot entre les balises)
- les lignes blanches
La ligne de commande qui suit :
- les lignes commençant par //
Bon alors entendons nous bien ;-))
On doit supprimer :
- les lignes commençant par //
- les lignes entre /* et */ (avec ou sans retour chariot entre les balises)
- les lignes blanches
La ligne de commande qui suit :
sed -e '/^\/\{2\}/d;/^$/d;/^\/\*.*\*\/$/d;/^\/\*/,/\*\/$/d' fich.txt | wc -lsupprime donc :
- les lignes commençant par //
/^\/\{2\}/d- les lignes blanches/^$/d- les lignes entre /* et */ sans retour chariot entre les balises
/^\/\*.*\*\/$/d- les lignes entre /* et */ avec retour chariot entre les balises
/^\/\*/,/\*\/$/det compte les lignes restantes ;-))