scripts/lib/utils/__init__.py
gdetrez 84c2f0eff1 fonction pour transformer une chaine en argument pour un shell
darcs-hash:20061025190801-f46e9-6c9b9b18b8be02f4829aa3f2ff225104c395e75c.gz
2006-10-25 21:08:01 +02:00

24 lines
764 B
Python

import re
def __init__():
pass
def QuoteForPOSIX(string):
'''quote a string so it can be used as an argument in a posix shell
According to: http://www.unix.org/single_unix_specification/
2.2.1 Escape Character (Backslash)
A backslash that is not quoted shall preserve the literal value
of the following character, with the exception of a <newline>.
2.2.2 Single-Quotes
Enclosing characters in single-quotes ( '' ) shall preserve
the literal value of each character within the single-quotes.
A single-quote cannot occur within single-quotes.
source : http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/498202
'''
return "\\'".join(["'" + p + "'" for p in string.split("'")])