Having Fun With 31.521 Shell Scripts

Nicolas Jeannerod 1 Yann Régis-Gianas 2, 3 Ralf Treinen 2
3 PI.R2 - Design, study and implementation of languages for proofs and programs
PPS - Preuves, Programmes et Systèmes, Inria Paris-Rocquencourt, UPD7 - Université Paris Diderot - Paris 7, CNRS - Centre National de la Recherche Scientifique : UMR7126
Abstract : Statically parsing shell scripts is, due to various peculiarities of the shell language, a challenge. One of the difficulties is that the shell language is designed to be executed by intertwining reading chunks of syntax with semantic actions. We have analyzed a corpus of 31.521 POSIX shell scripts occurring as maintainer scripts in the Debian GNU/Linux distribution. Our parser, which makes use of recent developments in parser generation technology, succeeds on 99.9% of the corpus. The architecture of our tool allows us to easily plug in various statistical analyzers on the syntax trees constructed from the shell scripts. The statistics obtained by our tool are the basis for the definition of a model which we plan to use in the future for the formal verification of scripts.
Type de document :
Pré-publication, Document de travail
2017
Liste complète des métadonnées

Littérature citée [15 références]  Voir  Masquer  Télécharger

https://hal.archives-ouvertes.fr/hal-01513750
Contributeur : Ralf Treinen <>
Soumis le : mardi 25 avril 2017 - 14:32:38
Dernière modification le : jeudi 15 novembre 2018 - 20:27:28
Document(s) archivé(s) le : mercredi 26 juillet 2017 - 14:15:14

Fichier

main.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

  • HAL Id : hal-01513750, version 1

Collections

Citation

Nicolas Jeannerod, Yann Régis-Gianas, Ralf Treinen. Having Fun With 31.521 Shell Scripts. 2017. 〈hal-01513750〉

Partager

Métriques

Consultations de la notice

493

Téléchargements de fichiers

367