在别名中执行脚本

时间:2013-01-14 03:59:34

标签: eclipse alias zshrc

我正在尝试别名eclipse来执行eclipse -data $(pwd)。但是,出于某种原因,将其添加到我的zshrc不起作用:

alias eclipse="eclipse -data $(pwd)"

我似乎无法找到正确的语法 - 有人可以帮助我吗?

2 个答案:

答案 0 :(得分:4)

我认为你不能在别名中使用参数(这就是other posts似乎表明的内容)。您可以改为定义一个函数:

function eclipse () {
     eclipse -data "$(pwd)"
}

当然,如果你这样做,运行eclipse会给你:

eclipse: maximum nested function level reached

那是因为一旦你定义了名为eclipse的函数来掩盖外部命令,就会产生无限递归循环。

相反,您可以使用command告诉zsh忽略任何名为eclipse的别名或函数:

function eclipse () {
     command eclipse -data "$(pwd)"
}

答案 1 :(得分:0)

在这种情况下,您可以使用`command`执行pwd:

alias eclipse="eclipse -data `pwd`"