Hi, Trying to make a link that already exists, 'ln' prints a message that is slightly confusing, especially when using '-v' and thus expexting a progress message. For example:
$ ln -sv bash /bin/sh ln: creating symbolic link '/bin/sh': File exists The 'creating..." seems to say that the link is being created. The message would be clearer in the following form: ln: cannot create symbolic link '/bin/sh': File exists Attached patch makes this change. Regards, Benno -- http://www.fastmail.fm - Faster than the air-speed velocity of an unladen european swallow
From 05939f3bf8907f9ae9f36d72e521d934c49daf37 Mon Sep 17 00:00:00 2001 From: Benno Schulenberg <bensb...@justemail.net> Date: Sat, 26 Jun 2010 12:00:42 +0200 Subject: [PATCH] ln: print a clearer error message when linking fails --- src/ln.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/ln.c b/src/ln.c index 8612afe..bd5f361 100644 --- a/src/ln.c +++ b/src/ln.c @@ -304,14 +304,14 @@ do_link (const char *source, const char *dest) error (0, errno, (symbolic_link ? (errno != ENAMETOOLONG && *source - ? _("creating symbolic link %s") - : _("creating symbolic link %s -> %s")) + ? _("cannot create symbolic link %s") + : _("cannot create symbolic link %s -> %s")) : (errno == EMLINK && !source_is_dir - ? _("creating hard link to %.0s%s") + ? _("cannot create hard link to %.0s%s") : (errno == EDQUOT || errno == EEXIST || errno == ENOSPC || errno == EROFS) - ? _("creating hard link %s") - : _("creating hard link %s => %s"))), + ? _("cannot create hard link %s") + : _("cannot create hard link %s => %s"))), quote_n (0, dest), quote_n (1, source)); if (dest_backup) -- 1.6.3.3