]> arthur.barton.de Git - bup.git/blobdiff - cmd/restore-cmd.py
index: only collect metadata for stale paths
[bup.git] / cmd / restore-cmd.py
index d52748914a52c5fe4943265a1881b4c4e8bd2704..9fbaf909ee14eeac5553e0b9f648f303dfecd819 100755 (executable)
@@ -1,8 +1,18 @@
-#!/usr/bin/env python
-import copy, errno, sys, stat, re
+#!/bin/sh
+"""": # -*-python-*-
+bup_python="$(dirname "$0")/bup-python" || exit $?
+exec "$bup_python" "$0" ${1+"$@"}
+"""
+# end of bup preamble
+
+import copy, errno, os, sys, stat, re
+
 from bup import options, git, metadata, vfs
-from bup.helpers import *
 from bup._helpers import write_sparsely
+from bup.helpers import (add_error, chunkyreader, handle_ctrl_c, log, mkdirp,
+                         parse_rx_excludes, progress, qprogress, saved_errors,
+                         should_rx_exclude_path, unlink)
+
 
 optspec = """
 bup restore [-C outdir] </branch/revision/path/to/dir ...>
@@ -146,7 +156,7 @@ def hardlink_if_possible(fullname, node, meta):
                 try:
                     os.link(target_path, fullname)
                     return True
-                except OSError, e:
+                except OSError as e:
                     if e.errno != errno.EXDEV:
                         raise
     else:
@@ -167,7 +177,7 @@ def write_file_content(fullname, n):
 
 
 def write_file_content_sparsely(fullname, n):
-    outfd = os.open(fullname, os.O_WRONLY | os.O_CREAT | os.O_TRUNC, 0600)
+    outfd = os.open(fullname, os.O_WRONLY | os.O_CREAT | os.O_TRUNC, 0o600)
     try:
         trailing_zeros = 0;
         for b in chunkyreader(n.open()):
@@ -314,7 +324,7 @@ for d in extra:
     path,name = os.path.split(d)
     try:
         n = top.lresolve(d)
-    except vfs.NodeError, e:
+    except vfs.NodeError as e:
         add_error(e)
         continue
     isdir = stat.S_ISDIR(n.mode)