summaryrefslogtreecommitdiffstats
path: root/doc/source/examples/dpkg-extract.py
diff options
context:
space:
mode:
Diffstat (limited to 'doc/source/examples/dpkg-extract.py')
-rwxr-xr-xdoc/source/examples/dpkg-extract.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/doc/source/examples/dpkg-extract.py b/doc/source/examples/dpkg-extract.py
new file mode 100755
index 0000000..02a9fdd
--- /dev/null
+++ b/doc/source/examples/dpkg-extract.py
@@ -0,0 +1,27 @@
+#!/usr/bin/python3
+"""Emulate dpkg --extract package.deb outdir"""
+
+import os
+import sys
+
+import apt_inst
+
+
+def main():
+ """Main function."""
+ if len(sys.argv) < 3:
+ print("Usage: %s package.deb outdir\n" % (__file__), file=sys.stderr)
+ sys.exit(1)
+ if not os.path.exists(sys.argv[2]):
+ print("The directory %s does not exist\n" % (sys.argv[2]), file=sys.stderr)
+ sys.exit(1)
+
+ fobj = open(sys.argv[1])
+ try:
+ apt_inst.DebFile(fobj).data.extractall(sys.argv[2])
+ finally:
+ fobj.close()
+
+
+if __name__ == "__main__":
+ main()