如果有同名的别名,如何在bash中调用函数?

时间:2014-02-12 20:08:46

标签: bash function alias

看一下这个例子:

[boda]$ alias aaa='echo aaa'
[boda]$ function aaa () { echo bbb }

[boda]$ function aaa () { echo bbb; }
[boda]$ aaa
aaa

正如您所看到的,我有别名aaa和功能aaa。但是,当我执行aaa时,别名会运行。

如何改为运行该功能?

2 个答案:

答案 0 :(得分:7)

  

当我执行aaa别名运行时。

您可以将其运行为:

\aaa

这将调用函数。

答案 1 :(得分:0)

man page for alias显示有unalias命令。

unalias aaa

如果您运行此操作,即使已定义aliasfunction,再次调用aaa也应运行该功能。但是,这会破坏别名。如果这是不受欢迎的,那么anubhava的答案(或者Keith Thompson建议不要用同名来定义它们)是最好的。