Il s'agit de la commande cloc qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks à l'aide de l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS.
PROGRAMME:
Nom
cloc - Compte et calcule les différences entre les lignes de code source et les commentaires.
SYNOPSIS
horloge [options] ...
DESCRIPTION
Compter ou calculer les différences de lignes physiques de code source dans les fichiers donnés (peut être
archives telles que des archives compressées ou des fichiers zip) et/ou récursivement en dessous du
répertoires. Il est entièrement écrit en Perl, en utilisant uniquement des modules du standard
distribution.
OPTIONS
Entrée Options
Pour compter l'entrée standard, utilisez le nom de fichier spécial -.
--extrait-avec=CMD
Cette option n'est nécessaire que si cloc est incapable de comprendre comment extraire le contenu
du ou des fichiers d'entrée par lui-même. Utilisez CMD pour extraire les fichiers d'archives binaires (par exemple :
.tar.gz, .zip, .Z). Utilisez le littéral '>FILE<' pour remplacer le(s) fichier(s) réel(s) à
être extrait. Par exemple, pour compter les lignes de code dans les fichiers d'entrée gcc-4.2.tar.gz
perl-5.8.8.tar.gz sous Unix :
--extract-with='gzip -dc >FILE< | goudron xf -
ou, si vous avez GNU tar :
--extract-with='tar zxf >FILE<'
et sous Windows, utilisez par exemple :
--extract-with="\"c:\Program Files\WinZip\WinZip32.exe\" -e -o >FILE
--list-file=FICHIER
Prendre la liste des noms de fichiers et/ou de répertoires à traiter depuis FILE qui en a un
nom de fichier/répertoire par ligne. Voir également --exclure-fichier-liste
--unicode
Vérifiez les fichiers binaires pour voir s'ils contiennent du texte ASCII étendu Unicode. Ce qui provoque
les performances baissent sensiblement.
Gestion Options
--autoconf
Comptez les fichiers .in (tels que traités par GNU autoconf) des langues reconnues.
--par-fichier
Rapportez les résultats pour chaque fichier source rencontré.
--par-fichier-par-langage
Rapportez les résultats pour chaque fichier source rencontré en plus du rapport par langue.
--diff SET1 SET2
Calculez les différences de code et de commentaires entre les fichiers source de SET1 et SET2. Les
les entrées peuvent être des paires de fichiers, de répertoires ou d'archives. Utilisation --diff-alignement à
générer une liste montrant quelles paires de fichiers ont été comparées. Voir également --ignore-cas,
--ignore-espace blanc.
--diff-timeout N
Ignorez les fichiers dont le traitement prend plus de N secondes. La valeur par défaut est de 10 secondes.
(Les fichiers volumineux avec de nombreuses lignes répétées peuvent provoquer Algorithme::Diff::sdiff() à prendre
les heures.)
--suivre-liens
[Unix uniquement] Suivez les liens symboliques vers les répertoires (les liens symboliques vers les fichiers sont toujours
suivi).
--force-lang=LANG[,EXT]
Traitez tous les fichiers qui ont une extension EXT avec le compteur pour la langue LANG. Pour
exemple, pour compter tous les fichiers .f avec le compteur Fortran 90 (qui s'attend à ce que les fichiers se terminent
avec .f90) au lieu du compteur Fortran 77 par défaut, utilisez :
--force-lang="Fortran 90",f
Si EXT est omis, chaque fichier sera compté avec le compteur LANG. Cette option peut
être spécifié plusieurs fois (mais cela n'est utile que lorsque EXT est donné à chaque fois). Voir
aussi --script-lang, --lang-no-ext.
--force-lang-def=FICHIER
Chargez les filtres de traitement de la langue à partir de FILE, puis utilisez ces filtres à la place du
filtres intégrés. Remarque : langues qui correspondent à la même extension de fichier (par exemple :
MATLAB/Objectif C/MUMPS ; Pascal/PHP; Lisp/OpenCL) seront ignorés car ils nécessitent
traitement supplémentaire qui n'est pas exprimé dans les fichiers de définition de langue. Utilisation
--read-lang-def pour définir de nouveaux filtres de langue sans remplacer les filtres intégrés (voir
aussi --write-lang-def).
--ignore-espace blanc
Ignorer l'espace blanc horizontal lors de la comparaison de fichiers avec --diff. Voir également
--ignore-cas.
--ignore-cas
Ignorer les modifications au cas où ; considérer les lettres majuscules et minuscules équivalentes lorsque
comparaison de fichiers avec --diff. Voir également --ignore-espace blanc.
--lang-no-ext=LANG
Comptez les fichiers sans extensions à l'aide du compteur LANG. Cette option remplace l'interne
logique pour les fichiers sans extensions (où ces fichiers sont vérifiés par rapport aux fichiers connus
langages de script en examinant la première ligne pour "#!"). Voir également --force-lang,
--script-lang.
--max-file-size=Mo
Ignorer les fichiers de plus de "Mo" mégaoctets lors de la traversée des répertoires. Par défaut,
"Mo"=100. l'exigence de mémoire de cloc est environ vingt fois plus grande que la plus grande
fichier ainsi exécuté avec des fichiers de plus de 100 Mo sur un ordinateur avec moins de 2 Go de
la mémoire causera des problèmes. Remarque : cette vérification ne s'applique pas explicitement aux fichiers
passé en tant qu'arguments de ligne de commande.
--read-fichiers-binaires
Traiter les fichiers binaires en plus des fichiers texte. C'est généralement une mauvaise idée et devrait
ne doit être tenté qu'avec des fichiers texte contenant des données binaires intégrées.
--read-lang-def=FICHIER
Chargez de nouveaux filtres de traitement de la langue à partir de FILE et fusionnez-les avec ceux déjà connus
à synchroniser. Si FILE définit une langue que Cloc connaît déjà, la définition de Cloc sera
avoir la priorité. Utilisation --force-lang-def pour outrepasser les définitions de horloge. (voir également
--write-lang-def).
--script-lang=LANG,S
Traitez tous les fichiers qui appellent "S" comme un "#!" langage de script avec le compteur pour
langue LANG. Par exemple, les fichiers commençant par "#!/usr/local/bin/perl5.8.8" seront
compté avec le compteur Perl en utilisant
--script-lang=Perl,perl5.8.8
Le nom du langage est insensible à la casse mais le nom de l'exécutable du langage de script,
"S", doit avoir la bonne casse. Cette option peut être spécifiée plusieurs fois. Voir également
--force-lang.
--sdir=REP
Utilisez DIR comme répertoire de travail au lieu de laisser Fichier::Temp choisi l'emplacement.
Les fichiers écrits à cet emplacement ne sont pas supprimés à la fin de l'exécution (comme ils le sont avec
Fichier::Temp).
--skip-unicité
Ignorez la vérification de l'unicité du fichier. Cela augmentera les performances au détriment de
compter plusieurs fois les fichiers au contenu identique (si de tels doublons existent).
--stdin-name=FICHIER
Compter les lignes diffusées via STDIN comme s'ils provenaient d'un fichier nommé FILE.
--strip-comments=EXT
Pour chaque fichier traité, écrivez dans le répertoire courant une version du fichier qui
a les lignes vides et les commentaires supprimés. Le nom de chaque fichier supprimé est l'original
nom de fichier avec ".EXT" ajouté. Il est écrit dans le répertoire courant sauf si
--répertoire-original est sur.
--répertoire-original
Écrivez les fichiers supprimés dans le même répertoire que les fichiers d'origine. Uniquement efficace dans
combinaison avec --strip-commentaires.
--sum-rapports
Les arguments d'entrée sont des fichiers de rapport préalablement créés avec le --fichier-rapport option.
Fait un ensemble cumulatif de résultats contenant la somme des données de l'individu
fichiers de rapport.
--unix
Remplacez la logique de détection du système d'exploitation et exécutez-le en mode UNIX. Voir également
--les fenêtres, --show-os.
--les fenêtres
Ignorez la logique de détection du système d'exploitation et exécutez-le en mode Microsoft Windows. Voir
aussi --unix, --show-os.
Filtre Options
--exclude-dir=[, ...]>
Exclure les répertoires séparés par des virgules de l'analyse. Par exemple:
--exclude-dir=.cache,test
ignorera tous les fichiers correspondant à "/.cache/" ou "/test/" dans leur chemin.
Les répertoires nommés ".bzr", ".cvs", ".hg", ".git", ".hg" et ".svn" sont toujours
exclu.
--exclude-ext=EXT1[,EXT2 ...]
Ne comptez pas les fichiers ayant les extensions de nom de fichier données.
--exclude-lang=[, ...]>
Exclure les langues séparées par des virgules du décompte.
--exclude-list-file=FICHIER
Ignorez les fichiers dont les noms apparaissent dans FILE. FILE doit avoir une entrée par ligne. Relatif
les noms de chemin seront résolus à partir du répertoire où cloc est invoqué. Voir
aussi --list-fichier.
--match-d=REGEX
Ne comptez que les fichiers dans les répertoires correspondant à l'expression régulière Perl. Par exemple
--match-d='/(src|include)/'
ne compte que les fichiers dans les chemins de répertoire contenant "/src/" ou "/include/".
--not-match-d=REGEX
Comptez tous les fichiers sauf dans les répertoires correspondant à l'expression régulière Perl.
--match-f=REGEX
Ne comptez que les fichiers dont les noms de base correspondent à l'expression régulière Perl. Par exemple, cela ne compte que
fichiers au début avec Widget ou widget :
--match-f='^[Ww]idget'
--not-match-f=REGEX
Comptez tous les fichiers à l'exception de ceux dont les noms de base correspondent à l'expression régulière Perl.
--skip-archive=REGEX
Ignore les fichiers qui se terminent par l'expression régulière Perl donnée. Par exemple, si donné
--skip-archive='(zip|tar(\.(gz|Z|bz2|xz|7z))?)' le code ignorera les fichiers qui se terminent
avec .zip, .tar, .tar.gz, .tar.Z, .tar.bz2, .tar.xz et .tar.7z.
--skip-win-caché
Sous Windows, ignorez les fichiers cachés.
Déboguer Options
--categorized=FICHIER
Enregistrez les noms des fichiers catégorisés dans FILE.
--counted=FICHIER
Enregistrez les noms des fichiers source traités dans FILE.
--diff-alignment=FICHIER
Écrire dans FILE une liste de fichiers et de paires de fichiers indiquant quels fichiers ont été ajoutés, supprimés,
et/ou comparé au cours d'une course avec --diff. Cet interrupteur force le --diff mode activé.
--Aidez-moi
Imprimez ces informations d'utilisation et quittez.
--found=FICHIER
Enregistrez les noms de chaque fichier trouvé dans FILE.
--ignored=FICHIER
Enregistrez les noms des fichiers ignorés et la raison pour laquelle ils ont été ignorés dans FILE.
--print-filter-stages
Imprimer vers SORTIE STD le code source traité avant et après l'application de chaque filtre.
--show-ext[=EXT]
Imprimez des informations sur toutes les extensions de fichiers connues (ou uniquement celles données) et quittez.
--show-lang[=LANG]
Imprimez des informations sur toutes les langues connues (ou uniquement celles données) et quittez.
--show-os
Imprimez la valeur du mode du système d'exploitation et quittez. Voir également --unix, --les fenêtres.
-v[=]>
Activez détaillé avec une valeur numérique facultative.
--version
Imprimez la version de ce programme et quittez.
--write-lang-def=FICHIER
Écrit dans FILE les filtres de traitement de la langue puis quitte. Utile comme première étape pour
créer des définitions de langue personnalisées. Voir également --force-lang-def, --read-lang-def.
Sortie Options
--3 Imprimer la sortie en langage de troisième génération. (Cette option peut entraîner la sommation du rapport à
échouer si certains rapports ont été produits avec cette option tandis que d'autres ont été produits sans
il.)
--progress-rate=N
Afficher la mise à jour de la progression après le traitement de chaque N fichiers (par défaut N=100). Réglez N sur 0 pour
supprimer la sortie de progression ; utile lors de la redirection de la sortie vers SORTIE STD.
--silencieux
Supprimer tous les messages d'information à l'exception du rapport final.
--report-file=FICHIER
Écrivez les résultats dans FILE au lieu de la sortie standard.
--out=FICHIER
synonyme de --report-file=FICHIER.
--csv
Écrivez les résultats sous forme de valeurs séparées par des virgules.
--csv-delimiter=C
Utilisez le caractère C comme délimiteur pour les fichiers séparés par des virgules au lieu de ,. Cette
force de commutation --csv être sur.
--sql=FICHIER
Écrire les résultats sous forme d'instructions SQL CREATE et INSERT pouvant être lues par une base de données
programme tel que SQLite. Si FICHIER est -, la sortie est envoyée à SORTIE STD.
--sql-project=NOM
Utilisation comme identifiant de projet pour l'exécution en cours. Uniquement valable avec le --sql
option.
--sql-append
Ajouter des instructions d'insertion SQL au fichier spécifié par --sql et ne pas générer de table
possibilité de création.
--somme-un
Pour les rapports en texte brut, affichez la ligne SUM : sortie même si un seul fichier d'entrée est
traité.
--xml
Écrivez les résultats en XML.
--xsl[=FICHIER]
Référencez FILE en tant que feuille de style XSL dans la sortie XML. Si FICHIER n'est pas fourni,
écrit une feuille de style par défaut, cloc.xsl. Ce commutateur force --xml être sur.
--yaml
Écrivez les résultats en YAML.
EXEMPLES
Comptez les lignes de code dans le fichier tar compressé Perl 5.10.0 sur un système d'exploitation de type UNIX
système:
horloge perl-5.10.0.tar.gz
Comptez les modifications apportées aux fichiers, au code et aux commentaires entre les versions Python 2.6.6 et 2.7 :
cloc --diff Python-2.6.6.tar.bz Python-2.7.tar.bz2
Pour voir comment cloc aligne les fichiers pour la comparaison entre deux bases de code, utilisez le
--diff-alignment=FICHIER option. Ici, les informations d'alignement sont écrites dans "align.txt":
cloc --diff-alignement=align.txt gcc-4.4.0.tar.bz2 gcc-4.5.0.tar.bz2
Imprimer les langues reconnues
horloge --show-lang
Supprimez les commentaires de "foo.c" et enregistrez le résultat dans "foo.c.nc"
cloc --strip-comments=nc foo.c
Des exemples supplémentaires peuvent être trouvés surhttp://cloc.sourceforge.net>.
ENVIRONNEMENT
Aucun.
Utilisez clo en ligne en utilisant les services onworks.net