summaryrefslogtreecommitdiffstats
path: root/bin/sh/alias.c
diff options
context:
space:
mode:
authortjr <tjr@FreeBSD.org>2002-06-04 12:59:12 +0000
committertjr <tjr@FreeBSD.org>2002-06-04 12:59:12 +0000
commit33d27dd210c9b2a95f1ab802306f257894298a4f (patch)
tree20257442bc2cc5cae672c11d72306aa5eae7e200 /bin/sh/alias.c
parentf5f8d2529997c1813e19eef4f358b49317c1698b (diff)
downloadFreeBSD-src-33d27dd210c9b2a95f1ab802306f257894298a4f.zip
FreeBSD-src-33d27dd210c9b2a95f1ab802306f257894298a4f.tar.gz
Quote alias values in the output of the alias(1) builtin so they are
suitable for re-input to the shell (SUSv3)
Diffstat (limited to 'bin/sh/alias.c')
-rw-r--r--bin/sh/alias.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/bin/sh/alias.c b/bin/sh/alias.c
index b899edb..f6b462b 100644
--- a/bin/sh/alias.c
+++ b/bin/sh/alias.c
@@ -207,8 +207,11 @@ aliascmd(int argc, char **argv)
for (i = 0; i < ATABSIZE; i++)
for (ap = atab[i]; ap; ap = ap->next) {
- if (*ap->name != '\0')
- out1fmt("alias %s=%s\n", ap->name, ap->val);
+ if (*ap->name != '\0') {
+ out1fmt("alias %s=", ap->name);
+ out1qstr(ap->val);
+ out1c('\n');
+ }
}
return (0);
}
@@ -217,8 +220,11 @@ aliascmd(int argc, char **argv)
if ((ap = lookupalias(n, 0)) == NULL) {
outfmt(out2, "alias: %s not found\n", n);
ret = 1;
- } else
- out1fmt("alias %s=%s\n", n, ap->val);
+ } else {
+ out1fmt("alias %s=", n);
+ out1qstr(ap->val);
+ out1c('\n');
+ }
else {
*v++ = '\0';
setalias(n, v);
OpenPOWER on IntegriCloud