diff options
author | Andrew J. Schorr <aschorr@telemetry-investments.com> | 2014-11-03 14:40:38 -0500 |
---|---|---|
committer | Andrew J. Schorr <aschorr@telemetry-investments.com> | 2014-11-03 14:40:38 -0500 |
commit | 6a9d48365f5044b64a6c270760808d17d475ca4b (patch) | |
tree | d612b2410fe9af333a79e524f5e5102f9754feed /awklib/eg/lib/shellquote.awk | |
parent | b4d06df669e1eaf6c98cacb5c5f299bb5324e804 (diff) | |
parent | 204bec7af64c61489e37007d45de936482007977 (diff) | |
download | egawk-6a9d48365f5044b64a6c270760808d17d475ca4b.tar.gz egawk-6a9d48365f5044b64a6c270760808d17d475ca4b.tar.bz2 egawk-6a9d48365f5044b64a6c270760808d17d475ca4b.zip |
Merge remote-tracking branch 'origin/master' into select
Diffstat (limited to 'awklib/eg/lib/shellquote.awk')
-rw-r--r-- | awklib/eg/lib/shellquote.awk | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/awklib/eg/lib/shellquote.awk b/awklib/eg/lib/shellquote.awk new file mode 100644 index 00000000..cd943dc7 --- /dev/null +++ b/awklib/eg/lib/shellquote.awk @@ -0,0 +1,22 @@ +# 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 +} |