如何将'gvim文件名'别名为'gvim文件名&'

der*_*n08 2 vim bash alias cygwin

我希望gvim始终在单独的窗口中打开并立即返回命令提示符。换句话说我想要

gvim filename
Run Code Online (Sandbox Code Playgroud)

与...相同

gvim filename &
Run Code Online (Sandbox Code Playgroud)

看来我应该可以使用别名来做到这一点。别名是否有特殊的通配符?就像是:

alias gvim="gvim <wildcard> &"
Run Code Online (Sandbox Code Playgroud)

在命令行中gvim之后的任何文本都将替换“通配符”。

我也尝试过:

function gvim() 
{ 
    "/cygdrive/c/program files (x86)/vim/vim72/gvim.exe" "$@" "&" ;
}
Run Code Online (Sandbox Code Playgroud)

但是它只会打开gvim,不会像我想要的那样返回提示。

如果有人可以向我指出正确的方向,那将大大提高我对.bashrc的工作方式的理解。

谢谢!

-德里克

更新:我通过消除结尾的&和分号引起来了它的工作:

function gvim() 
{ 
    "/cygdrive/c/program files (x86)/vim/vim72/gvim.exe" "$@" &
}
Run Code Online (Sandbox Code Playgroud)

ZyX*_*ZyX 5

最后一点是正确的。错误的是,plain &告诉shell在后台运行进程,并"&"gvim命令行中添加了参数(即,指示gvim打开名为的文件&)。通过在这里使用引号,您只是指示Shell不要&特别对待,而gvim没有理由去做Shell的工作。