GNU bug report logs - #11194
24.0.95; sudo rm doesn't work with absolute directory paths on the file system

Previous Next

Package: emacs;

Reported by: Cray Elliott <mp2e <at> archlinux.us>

Date: Sat, 7 Apr 2012 18:15:02 UTC

Severity: normal

Found in version 24.0.95

Done: Chong Yidong <cyd <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


Message #73 received at 11194 <at> debbugs.gnu.org (full text, mbox):

From: Michael Albinus <michael.albinus <at> gmx.de>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: Cray Elliott <mp2e <at> archlinux.us>, 11194 <at> debbugs.gnu.org
Subject: Re: bug#11194: 24.0.95;
	sudo rm doesn't work with absolute directory paths on the file system
Date: Wed, 25 Apr 2012 11:32:17 +0200
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:

> The problem is the following:
> - eshell/sudo has the same name as /usr/bin/sudo but does something
>   slightly different.
> - eshell/rm has the same name as /bin/rm but does something
>   slightly different.

That's the idea of eshell's built-ins.

> - the combination of the two leads to "sudo rm" doing something less
>   slightly different.

Again, it does what you could expect from *eshell*. If you do not want
this behaviour, you could use *shell*. Or you could mask the built-in by
prepending a "*" to the command, as described.

> I don't use Eshell myself, so I'm not sure what the best way to
> fix this.  Maybe it's eshell/rm that needs fixing, maybe Eshell should
> change to use different name for its `sudo', or maybe the solution
> should be yet different.

The question is whether a command being an argument of "sudo" shall
still behave like other eshell commands. This is not only true for "rm"
(being `eshell/rm'), but for all commands which could be a valid Lisp
command.

>         Stefan

Best regards, Michael.




This bug report was last modified 13 years and 85 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.