Mercurial > hg > toybox
changeset 1144:58daf9c9a0b1 draft
ln -v support from Ashwini Sharma (comment tweak from me)
author | Rob Landley <rob@landley.net> |
---|---|
date | Wed, 18 Dec 2013 10:25:02 -0600 |
parents | 2115856395e2 |
children | 80c9df5145fe |
files | toys/posix/ln.c |
diffstat | 1 files changed, 6 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/toys/posix/ln.c Wed Dec 18 10:20:16 2013 -0600 +++ b/toys/posix/ln.c Wed Dec 18 10:25:02 2013 -0600 @@ -4,13 +4,13 @@ * * See http://opengroup.org/onlinepubs/9699919799/utilities/ln.html -USE_LN(NEWTOY(ln, "<1nfs", TOYFLAG_BIN)) +USE_LN(NEWTOY(ln, "<1vnfs", TOYFLAG_BIN)) config LN bool "ln" default y help - usage: ln [-sfn] [FROM...] TO + usage: ln [-sfnv] [FROM...] TO Create a link between FROM and TO. With only one argument, create link in current directory. @@ -18,6 +18,7 @@ -s Create a symbolic link -f Force the creation of the link, even if TO already exists -n Symlink at destination treated as file + -v Verbose */ #define FOR_ln @@ -49,14 +50,15 @@ if (S_ISDIR(buf.st_mode)) new = xmsprintf("%s/%s", dest, basename(try)); else new = dest; - /* Silently unlink the existing target. If it doesn't exist, - * then we just move on */ + // Silently unlink the existing target (if any) if (toys.optflags & FLAG_f) unlink(new); rc = (toys.optflags & FLAG_s) ? symlink(try, new) : link(try, new); if (rc) perror_exit("cannot create %s link from '%s' to '%s'", (toys.optflags & FLAG_s) ? "symbolic" : "hard", try, new); + else if (toys.optflags & FLAG_v) + fprintf(stderr, "'%s' -> '%s'\n", new, try); if (new != dest) free(new); } }