1# shell_quote --- quote an argument for passing to the shell 2# 3# Michael Brennan 4# brennan@madronabluff.com 5# September 2014 6 7function shell_quote(s, # parameter 8 SINGLE, QSINGLE, i, X, n, ret) # locals 9{ 10 if (s == "") 11 return "\"\"" 12 13 SINGLE = "\x27" # single quote 14 QSINGLE = "\"\x27\"" 15 n = split(s, X, SINGLE) 16 17 ret = SINGLE X[1] SINGLE 18 for (i = 2; i <= n; i++) 19 ret = ret QSINGLE SINGLE X[i] SINGLE 20 21 return ret 22} 23