Iain,
thanks for reporting this. The behavior is however as expected. Quoting from
the bash manpage:
----
ALIASES
Aliases allow a string to be substituted for a word when it is used
as the first word of a simple command. The shell maintains a list of aliases
that may be set and
unset with the alias and unalias builtin commands (see SHELL BUILTIN
COMMANDS below). The first word of each simple command, if unquoted, is
checked to see if it has an
alias. If so, that word is replaced by the text of the alias. The
characters /, $, ‘, and = and any of the shell metacharacters or quoting
characters listed above may
not appear in an alias name. The replacement text may contain any valid
shell input, including shell metacharacters. The first word of the replacement
text is tested
for aliases, but a word that is identical to an alias being expanded
is not expanded a second time.
----
AFAIK it has always been the case that aliases are only applied for the
first word of a command.
As a workaround, couldn't you just use alias visudo='sudo -E visudo' and
the just call visudo (without sudo)?
Anyway, this is not a bug in bash.
Regards,
Mika
** Changed in: bash (Ubuntu)
Status: New => Invalid
--
aliases not accounted for after first command
https://bugs.launchpad.net/bugs/231258
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs