X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/63cb5c235ccacdc1665a89560bc8c16fcbefd8d6..31d31c010bb6b5170e3962fdd50c6d393cfe6076:/crunch_scripts/crunchutil/subst.py diff --git a/crunch_scripts/crunchutil/subst.py b/crunch_scripts/crunchutil/subst.py index 06ef6c1198..bd99d3c71c 100644 --- a/crunch_scripts/crunchutil/subst.py +++ b/crunch_scripts/crunchutil/subst.py @@ -1,7 +1,10 @@ -import os import glob +import os +import re import stat +BACKSLASH_ESCAPE_RE = re.compile(r'\\(.)') + class SubstitutionError(Exception): pass @@ -60,7 +63,7 @@ def sub_basename(v): def sub_glob(v): l = glob.glob(v) if len(l) == 0: - raise SubstitutionError("$(glob {}) no match fonud".format(v)) + raise SubstitutionError("$(glob {}) no match found".format(v)) else: return l[0] @@ -73,7 +76,7 @@ def do_substitution(p, c, subs=default_subs): while True: m = search(c) if m is None: - return c + return BACKSLASH_ESCAPE_RE.sub(r'\1', c) v = do_substitution(p, c[m[0]+2 : m[1]]) var = True