GNU Recutils est une suite d'outils et de bibliothèques permettant d'accéder à des bases de données texte appelées
recfiles. Les données sont stockées comme des suites d'enregistrements, chaque enregistrement contenant un nombre arbitraire de champs nommés. Certaines fonctionnalités habituellement fournies par les systèmes de gestion de bases de données sont gérées par recutils : gestion des types de données, de l'intégrité des données (clés, champs obligatoires, etc.), des relations entre les enregistrements (par un concept proche des clés étrangères).
Bien que le système soit très simple (les données sont stockées dans des fichiers totalement lisibles dans un éditeur de texte standard), il permet de gérer des bases de données moyennement importantes, et représente en cela un compromis entre le
CSV qui stocke en clair mais n'offre pas de fonctionnalités et les systèmes de gestion de base de données relationnelles plus complets comme
MariaDB ou
PostgreSQL.
La suite GNU recutils inclut :
- Un manuel au format texinfo décrivant le format Rec et le logiciel ;
- Une bibliothèque CA (librec) fournissant une large collection de fonctions permettant d'accéder aux recfiles ;
- Une collection d'utilitaires en C (recinf, recsel, recins, recdel, recset, recfix, recfmt, csv2rec and mdb2rec) qui peuvent être utilisés dans les scripts shells et en ligne de commande pour travailler avec des recfiles ;
- Une collection d'utilitaires (mdb2rec, csv2rec) permettant de convertir les données d'autres formats en recfiles ;
- Un mode emacs (rec-mode).
Parmi les nouveautés de cette version 1.1 on trouve:
- Un nouvel outil, recfmt, pour formater les enregistrement selon un template.
- Opérateurs de comparaison de dates: avant (<<), après (>>) même date (==).
- Nouvel opérateur de comparaison selon la valeur d'une expression (?:).
- Nouvel opérateur de concaténation de chaînes de caractères (&).
- Amélioration de la portabilité de GNU recutils qui a été testé sur 10 OS différents.