如何将$ @作为单个参数传递给bash函数中的另一个命令?

iba*_*ash 4 bash

我有这个作为bash函数:

function gits() {
  git grep -i -n --color $@ -- $(git rev-parse --show-toplevel);
}
Run Code Online (Sandbox Code Playgroud)

如果我运行这个:

gits def add_crumb
Run Code Online (Sandbox Code Playgroud)

我想要:

git grep -i -n --color "def add_crumb" -- $(git rev-parse --show-toplevel)
Run Code Online (Sandbox Code Playgroud)

tri*_*eee 10

其目的$@是将其分成单独的参数."$*"如果您不想要,请使用.(是的,使用双引号; "$@"实际上你也应该将它们放入.)