Recfiles
Filename extension |
.rec |
---|---|
Type of format | Data interchange |
Open format? | yes |
Free format? | yes |
Website | www |
recfiles is a file format for human-editable, plain text databases.[1][2]
Original author(s) | Jose E. Marchesi |
---|---|
Initial release | December 3, 2010 |
Stable release | 1.9
/ April 16, 2022[3] |
Repository | git |
Written in | C |
License | GNU General Public License |
Website | www |
Databases using this file format can be edited using any text editor. Recfiles allow for basic relational database operations, such as typing, auto-incrementing, as well as a simple join operation.
Recutils is a collection of tools, like recfmt, recsel, and rec2csv used to work with recfile databases.[4] Various software libraries support the format.[5][6][7]
Syntax
Data are stored in text files with empty lines separating records. Fields within a record are lines starting with their name and a colon; it is possible to wrap long entries. Multiple record types can be maintained in a single text file.
Example
<syntaxhighlight lang="properties">
- This is a recfile document.
%rec: Text %type: Year int
Author: Doug McIlroy Year: 1964 Note: The Origin of Unix Pipes
Title: Unix Text Processing Author: Dale Dougherty Author: Tim O'Reilly Year: 1987 Publisher: Hayden Books
Author: William Shakespeare Title: Hamlet Year: 1599 Year: 1600 Year: 1601 </syntaxhighlight>
This example command would output the following three lines (of the two original entries, one having two authors): <syntaxhighlight lang="console"> $ recsel -e 'Year > "1900"' -p Author Author: Doug McIlroy Author: Dale Dougherty Author: Tim O'Reilly </syntaxhighlight>
See also
Lua error in mw.title.lua at line 346: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').
References
- ^ Marchesi, Jose E (2019-01-03). "Purpose". GNU Recutils Manual. Retrieved 2020-12-02.
- ^ James Tomasino (2020-01-26). "GNU Recutils". Retrieved 2020-02-09.
- ^ "Index of /gnu/recutils". ftp.gnu.org. Retrieved 11 April 2023.
- ^ "GNU Recutils - GNU Project - Free Software Foundation".
- ^ František Kučera (2019-04-08). "Relational pipes and GNU Recutils".
- ^ "Python-recutils". GitHub. 12 January 2022.
- ^ "Aisamanra/Rrecutils". GitHub. 13 January 2022.
External links