table of contents
| SDB(1) | General Commands Manual | SDB(1) |
NAME¶
sdb — simple
key-value database baked by base64, json and arrays
SYNOPSIS¶
sdb |
[-0dehjJv] -|db
[-|=|==] [.file|expr ..] |
DESCRIPTION¶
SDB is a simple disk and memory string-based key-value database. It is based on CDB and uses
-d- Decode stdin as base64 and prints to result to stdout
-D- Find differences between two databases
-C- Create the C and H files for a perfect hash implementation of the contents of the given Sdb
-G- Create the gperf file used by -C
-e- Encode stdin in base64 and prints to stdout
-h- Show help message
-j- Indent JSON from stdin if no more arguments, otherwise dump database as JSON.
-J- Enable journaling
-h- Show help message
-v- Show version
EXAMPLES¶
Some useful ways to run it:
$ sdb - ; in memory database
$ sdb test.db = < test.txt ; create database from text file
$ sdb test.db == a.txt b.txt ; create database from text files in a single command
$ sdb test.db ; dump contents of database
$ sdb test.db a=b a ; inline queries
Append those quoted commands to 'sdb -' to test these sdb_query expressions:
a=hello b=world a b # hello world
a=1 +a -a # 2 1 ; key inc/dec
a={"a":122} a:a=O a # {"a":0} ; json set
a={"foo":122} +a:foo # 123 ; json increment
[]a=1,2,3,4,5 [?]a # 5 ; count array
[]a=1,2,3,4,5 [0]a # 1 ; get element
[]a=1,2 [0]a=X a # X2 ; replace
[]a=1,2 [+0]a=0 a # 012 ; prepend
[]a=1,2 [-1]a=3 a # 123 ; append
AUTHORS¶
pancake <pancake@nopcode.org>
| February 7, 2021 | Linux 6.4.0-150700.53.22-default |