diff options
author | Skip Montanaro <skip@pobox.com> | 2003-10-28 16:17:54 (GMT) |
---|---|---|
committer | Skip Montanaro <skip@pobox.com> | 2003-10-28 16:17:54 (GMT) |
commit | 48f9c6dfb899401157f394bdcc0432eac2dbafd3 (patch) | |
tree | f8f1df8542a87527b6ba5f709efdb229ea0b148f | |
parent | 9c8f7eafcad308792478c2636dff8fe9110e0d77 (diff) | |
download | cpython-48f9c6dfb899401157f394bdcc0432eac2dbafd3.zip cpython-48f9c6dfb899401157f394bdcc0432eac2dbafd3.tar.gz cpython-48f9c6dfb899401157f394bdcc0432eac2dbafd3.tar.bz2 |
allow dump/load of gdbm files
-rw-r--r-- | Tools/scripts/db2pickle.py | 17 | ||||
-rw-r--r-- | Tools/scripts/pickle2db.py | 17 |
2 files changed, 28 insertions, 6 deletions
diff --git a/Tools/scripts/db2pickle.py b/Tools/scripts/db2pickle.py index 492c1d7..7b0857c 100644 --- a/Tools/scripts/db2pickle.py +++ b/Tools/scripts/db2pickle.py @@ -1,7 +1,7 @@ #!/usr/bin/env python """ -Synopsis: %(prog)s [-h|-b|-r] dbfile [ picklefile ] +Synopsis: %(prog)s [-h|-g|-b|-r|-a] dbfile [ picklefile ] Convert the database file given on the command line to a pickle representation. The optional flags indicate the type of the database (hash, @@ -21,6 +21,10 @@ try: except ImportError: dbm = None try: + import gdbm +except ImportError: + gdbm = None +try: import anydbm except ImportError: anydbm = None @@ -37,8 +41,9 @@ def usage(): def main(args): try: - opts, args = getopt.getopt(args, "hbrda", - ["hash", "btree", "recno", "dbm", "anydbm"]) + opts, args = getopt.getopt(args, "hbrdag", + ["hash", "btree", "recno", "dbm", + "gdbm", "anydbm"]) except getopt.error: usage() return 1 @@ -83,6 +88,12 @@ def main(args): except AttributeError: sys.stderr.write("anydbm module unavailable.\n") return 1 + elif opt in ("-g", "--gdbm"): + try: + dbopen = gdbm.open + except AttributeError: + sys.stderr.write("gdbm module unavailable.\n") + return 1 elif opt in ("-d", "--dbm"): try: dbopen = dbm.open diff --git a/Tools/scripts/pickle2db.py b/Tools/scripts/pickle2db.py index a35021f..7e699f4 100644 --- a/Tools/scripts/pickle2db.py +++ b/Tools/scripts/pickle2db.py @@ -1,7 +1,7 @@ #!/usr/bin/env python """ -Synopsis: %(prog)s [-h|-b|-r|-a|-d] dbfile [ picklefile ] +Synopsis: %(prog)s [-h|-b|-g|-r|-a|-d] dbfile [ picklefile ] Read the given picklefile as a series of key/value pairs and write to a new database. If the database already exists, any contents are deleted. The @@ -25,6 +25,10 @@ try: except ImportError: dbm = None try: + import gdbm +except ImportError: + gdbm = None +try: import anydbm except ImportError: anydbm = None @@ -41,8 +45,9 @@ def usage(): def main(args): try: - opts, args = getopt.getopt(args, "hbrda", - ["hash", "btree", "recno", "dbm", "anydbm"]) + opts, args = getopt.getopt(args, "hbrdag", + ["hash", "btree", "recno", "dbm", "anydbm", + "gdbm"]) except getopt.error: usage() return 1 @@ -87,6 +92,12 @@ def main(args): except AttributeError: sys.stderr.write("anydbm module unavailable.\n") return 1 + elif opt in ("-g", "--gdbm"): + try: + dbopen = gdbm.open + except AttributeError: + sys.stderr.write("gdbm module unavailable.\n") + return 1 elif opt in ("-d", "--dbm"): try: dbopen = dbm.open |