lang/python/ PyShelve
Shelve provides a persistent store.
Example
put.py
from datetime import datetime
import shelve
import sys
args = sys.argv[1:]
if len(args) == 0:
keys = ["_"]
else:
keys = args
data = sys.stdin.read()
with shelve.open("span") as db:
for key in keys:
db[key] = data
print(f"Stored {len(data)} bytes to {key}")
get.py
from datetime import datetime
import shelve
import sys
args = sys.argv[1:]
if len(args) == 0:
keys = ["_"]
else:
keys = args
with shelve.open("span") as db:
for key in keys:
if key in db:
print(f"{key}: {db[key]}")
else:
print(f"{key} <absent>")