23 lines
472 B
Awk
23 lines
472 B
Awk
# shell_quote --- quote an argument for passing to the shell
|
|
#
|
|
# Michael Brennan
|
|
# brennan@madronabluff.com
|
|
# September 2014
|
|
|
|
function shell_quote(s, # parameter
|
|
SINGLE, QSINGLE, i, X, n, ret) # locals
|
|
{
|
|
if (s == "")
|
|
return "\"\""
|
|
|
|
SINGLE = "\x27" # single quote
|
|
QSINGLE = "\"\x27\""
|
|
n = split(s, X, SINGLE)
|
|
|
|
ret = SINGLE X[1] SINGLE
|
|
for (i = 2; i <= n; i++)
|
|
ret = ret QSINGLE SINGLE X[i] SINGLE
|
|
|
|
return ret
|
|
}
|