execute.add_argument("command", nargs=argparse.REMAINDER)
execute.set_defaults(func=self._execute)
+ # export-key
+ export_key = subparsers.add_parser("export-key",
+ help=_("Export a key to a file"))
+ export_key.add_argument("fingerprint",
+ help=_("The fingerprint of the key to export"))
+ export_key.add_argument("--filename", nargs="?",
+ help=_("Write the key to this file"))
+ export_key.add_argument("--secret", action="store_true",
+ help=_("Include the secret key"))
+ export_key.set_defaults(func=self._export_key)
+
# generate-key
generate_key = subparsers.add_parser("generate-key",
help=_("Generate a new key"))
return p.execute(args.command, logging_callback=logging_callback)
+ def _export_key(self, p, args):
+ key = p.get_key(args.fingerprint)
+ if not key:
+ print(_("Could not find key with fingerprint %s") % fingerprint)
+ return
+
+ # Convert key to text
+ data = key.export(args.secret)
+
+ # Write out the key
+ if args.filename:
+ with open(args.filename, "w") as f:
+ f.write(data)
+ else:
+ print(data)
+
def _generate_key(self, p, args):
# Generate a new key
key = p.generate_key(